Cleanup root directory
Cleans up the root directory of the GitHub source tree and starts to separate platform-specific installing and packaging logic from the master CMakeLists.txt. Closes #2201
0
.gitmodules
vendored
@@ -1,2 +1,2 @@
|
||||
export CMAKE_OPTS="-DUSE_WERROR=ON"
|
||||
../build_mingw32 || ../build_mingw32
|
||||
../cmake/build_mingw32.sh || ../cmake/build_mingw32.sh
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
export CMAKE_OPTS="-DUSE_WERROR=ON"
|
||||
../build_mingw64 || ../build_mingw64
|
||||
../cmake/build_mingw64.sh || ../cmake/build_mingw64.sh
|
||||
|
||||
107
CMakeLists.txt
@@ -13,13 +13,27 @@ INCLUDE(AddFileDependencies)
|
||||
INCLUDE(CheckIncludeFiles)
|
||||
INCLUDE(FindPkgConfig)
|
||||
|
||||
SET(VERSION_MAJOR "1")
|
||||
SET(VERSION_MINOR "1")
|
||||
SET(VERSION_PATCH "3")
|
||||
#SET(VERSION_SUFFIX "")
|
||||
SET(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
|
||||
STRING(TOUPPER "${CMAKE_PROJECT_NAME}" PROJECT_NAME_UCASE)
|
||||
|
||||
# Timestamp available since cmake 2.8.11
|
||||
IF(CMAKE_VERSION VERSION_LESS "2.8.11")
|
||||
SET(PROJECT_YEAR "2015")
|
||||
ELSE()
|
||||
STRING(TIMESTAMP PROJECT_YEAR "%Y")
|
||||
ENDIF()
|
||||
|
||||
SET(PROJECT_AUTHOR "LMMS Developers")
|
||||
SET(PROJECT_URL "http://lmms.io")
|
||||
SET(PROJECT_EMAIL "lmms-devel@lists.sourceforge.net")
|
||||
SET(PROJECT_DESCRIPTION "${PROJECT_NAME_UCASE} - Free music production software")
|
||||
SET(PROJECT_COPYRIGHT "${PROJECT_AUTHOR}, 2008-${PROJECT_YEAR}")
|
||||
SET(VERSION_MAJOR "1")
|
||||
SET(VERSION_MINOR "1")
|
||||
SET(VERSION_PATCH "3")
|
||||
#SET(VERSION_SUFFIX "")
|
||||
SET(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
|
||||
IF(VERSION_SUFFIX)
|
||||
SET(VERSION "${VERSION}-${VERSION_SUFFIX}")
|
||||
SET(VERSION "${VERSION}-${VERSION_SUFFIX}")
|
||||
ENDIF(VERSION_SUFFIX)
|
||||
|
||||
INCLUDE(DetectMachine)
|
||||
@@ -363,12 +377,6 @@ ENDIF(LMMS_BUILD_WIN32)
|
||||
# check for libsamplerate
|
||||
PKG_CHECK_MODULES(SAMPLERATE REQUIRED samplerate>=0.1.8)
|
||||
|
||||
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/lmmsconfig.h.in" "${CMAKE_BINARY_DIR}/lmmsconfig.h")
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/lmmsversion.h.in" "${CMAKE_BINARY_DIR}/lmmsversion.h")
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/lmms.rc.in" "${CMAKE_BINARY_DIR}/lmms.rc")
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/plugins/zynaddsubfx/zynaddsubfx.rc.in" "${CMAKE_BINARY_DIR}/plugins/zynaddsubfx/zynaddsubfx.rc")
|
||||
|
||||
# set compiler flags
|
||||
SET(WERROR_FLAGS "-Wall -Werror=unused-function -Wno-sign-compare -Wno-strict-overflow")
|
||||
OPTION(USE_WERROR "Add -werror to the build flags. Stops the build on warnings" OFF)
|
||||
@@ -426,19 +434,6 @@ ENDIF(WIN32 OR WIN64)
|
||||
# we somehow have to make LMMS-binary depend on MOC-files
|
||||
ADD_FILE_DEPENDENCIES("${CMAKE_BINARY_DIR}/lmmsconfig.h")
|
||||
|
||||
# set up apple vars before traversing into data/scripts
|
||||
SET(MACOSX_BUNDLE_ICON_FILE "lmms.icns")
|
||||
SET(MACOSX_BUNDLE_GUI_IDENTIFIER "LMMS")
|
||||
SET(MACOSX_BUNDLE_LONG_VERSION_STRING "${VERSION}")
|
||||
SET(MACOSX_BUNDLE_BUNDLE_NAME "LMMS")
|
||||
SET(MACOSX_BUNDLE_SHORT_VERSION_STRING "${VERSION}")
|
||||
SET(MACOSX_BUNDLE_BUNDLE_VERSION "${VERSION}")
|
||||
SET(MACOSX_BUNDLE_COPYRIGHT "Tobias Doerffel, 2008-2010")
|
||||
SET(MACOSX_BUNDLE_MIMETYPE "application/x-lmms-project")
|
||||
SET(MACOSX_BUNDLE_MIMETYPE_ICON "project.icns")
|
||||
SET(MACOSX_BUNDLE_MIMETYPE_ID "net.sourceforge.lmms")
|
||||
SET(MACOSX_BUNDLE_PROJECT_URL "http://lmms.io")
|
||||
|
||||
IF(WIN32)
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-attributes")
|
||||
ELSE(WIN32)
|
||||
@@ -446,6 +441,7 @@ ELSE(WIN32)
|
||||
ENDIF(WIN32)
|
||||
|
||||
# make sub-directories
|
||||
ADD_SUBDIRECTORY(cmake)
|
||||
ADD_SUBDIRECTORY(src)
|
||||
ADD_SUBDIRECTORY(plugins)
|
||||
ADD_SUBDIRECTORY(tests)
|
||||
@@ -453,8 +449,8 @@ ADD_SUBDIRECTORY(data)
|
||||
ADD_SUBDIRECTORY(doc)
|
||||
|
||||
ADD_CUSTOM_COMMAND(OUTPUT "${CMAKE_BINARY_DIR}/lmms.1.gz"
|
||||
COMMAND gzip -c "\"${CMAKE_SOURCE_DIR}/lmms.1\"" > "\"${CMAKE_BINARY_DIR}/lmms.1.gz\""
|
||||
DEPENDS "${CMAKE_SOURCE_DIR}/lmms.1"
|
||||
COMMAND gzip -c "\"${CMAKE_SOURCE_DIR}/doc/lmms.1\"" > "\"${CMAKE_BINARY_DIR}/lmms.1.gz\""
|
||||
DEPENDS "${CMAKE_SOURCE_DIR}/doc/lmms.1"
|
||||
COMMENT "Generating lmms.1.gz")
|
||||
|
||||
ADD_CUSTOM_TARGET(manpage ALL
|
||||
@@ -496,7 +492,7 @@ ADD_CUSTOM_TARGET(dist
|
||||
COMMAND make clean
|
||||
COMMAND rm -rf "${TMP}"
|
||||
COMMAND mkdir -p "${TMP}"
|
||||
COMMAND cp AUTHORS build_mingw32 build_mingw64 CMakeLists.txt configure COPYING INSTALL lmms.1 lmms.rc.in lmms.spec.in lmmsconfig.h.in lmmsversion.h.in README TODO "${TMP}"
|
||||
COMMAND cp CMakeLists.txt LICENSE.txt INSTALL.txt README.md "${TMP}"
|
||||
COMMAND cp -r buildtools cmake data doc include plugins src "${TMP}"
|
||||
COMMAND rm -rf `find "${TMP}" -name cmake_install.cmake` `find "${TMP}" -name Makefile` `find "${TMP}" -type d -name CMakeFiles` "${TMP}/CMakeCache.txt"
|
||||
COMMAND tar cjf lmms-${VERSION}-src.tar.bz2 "${TMP}"
|
||||
@@ -565,59 +561,4 @@ MESSAGE(
|
||||
"\n\n")
|
||||
|
||||
INCLUDE(InstallRequiredSystemLibraries)
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "LMMS - easy music production for everyone!")
|
||||
SET(CPACK_PACKAGE_VENDOR "LMMS Developers")
|
||||
IF(LMMS_BUILD_APPLE)
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/README" "${CMAKE_BINARY_DIR}/README.txt" COPYONLY)
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/COPYING" "${CMAKE_BINARY_DIR}/COPYING.txt" COPYONLY)
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_BINARY_DIR}/README.txt")
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_BINARY_DIR}/COPYING.txt")
|
||||
ELSE(LMMS_BUILD_APPLE)
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README")
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING")
|
||||
ENDIF(LMMS_BUILD_APPLE)
|
||||
|
||||
SET(CPACK_PACKAGE_VERSION_MAJOR "${VERSION_MAJOR}")
|
||||
SET(CPACK_PACKAGE_VERSION_MINOR "${VERSION_MINOR}")
|
||||
SET(CPACK_PACKAGE_VERSION_PATCH "${VERSION_PATCH}")
|
||||
IF(VERSION_SUFFIX)
|
||||
SET(CPACK_PACKAGE_VERSION_PATCH "${VERSION_PATCH}-${VERSION_SUFFIX}")
|
||||
ENDIF(VERSION_SUFFIX)
|
||||
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "LMMS")
|
||||
IF(WIN32)
|
||||
SET(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/data/nsis_branding.bmp")
|
||||
SET(CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}/data/lmms.ico")
|
||||
SET(CPACK_NSIS_INSTALLED_ICON_NAME "lmms.exe")
|
||||
SET(CPACK_NSIS_DISPLAY_NAME "LMMS ${VERSION}")
|
||||
SET(CPACK_NSIS_HELP_LINK "http://lmms.io")
|
||||
SET(CPACK_NSIS_URL_INFO_ABOUT "http://lmms.io")
|
||||
SET(CPACK_NSIS_CONTACT "lmms-devel@lists.sourceforge.net")
|
||||
SET(CPACK_PACKAGE_EXECUTABLES "lmms.exe;LMMS")
|
||||
SET(CPACK_NSIS_MENU_LINKS "lmms.exe;LMMS")
|
||||
SET(CPACK_NSIS_DEFINES "!include ${CMAKE_SOURCE_DIR}/cmake/nsis/FileAssociation.nsh")
|
||||
SET(CPACK_PACKAGE_FILE_NAME "lmms-${VERSION}-win32")
|
||||
SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
|
||||
\\\${registerExtension} \\\"$INSTDIR\\\\lmms.exe\\\" \\\".mmp\\\" \\\"LMMS Project\\\"
|
||||
\\\${registerExtension} \\\"$INSTDIR\\\\lmms.exe\\\" \\\".mmpz\\\" \\\"LMMS Project (compressed)\\\"
|
||||
")
|
||||
SET(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS "
|
||||
\\\${unregisterExtension} \\\".mmp\\\" \\\"LMMS Project\\\"
|
||||
\\\${unregisterExtension} \\\".mmpz\\\" \\\"LMMS Project (compressed)\\\"
|
||||
DeleteRegKey HKCR \\\"LMMS Project\\\"
|
||||
DeleteRegKey HKCR \\\"LMMS Project (compressed)\\\"
|
||||
")
|
||||
ELSE(WIN32)
|
||||
SET(CPACK_STRIP_FILES "bin/lmms;${PLUGIN_DIR}/*.so")
|
||||
SET(CPACK_PACKAGE_EXECUTABLES "lmms" "LMMS binary")
|
||||
ENDIF(WIN32)
|
||||
|
||||
IF(WIN64)
|
||||
SET(CPACK_PACKAGE_FILE_NAME "lmms-${VERSION}-win64")
|
||||
SET(CPACK_NSIS_DEFINES "${CPACK_NSIS_DEFINES}
|
||||
InstallDir \\\"\\\$PROGRAMFILES64\\\\${CPACK_PACKAGE_INSTALL_DIRECTORY}\\\"")
|
||||
ENDIF(WIN64)
|
||||
|
||||
SET(CPACK_SOURCE_GENERATOR "TBZ2")
|
||||
SET(CPACK_SOURCE_PACKAGE_FILE_NAME "lmms-${VERSION}")
|
||||
INCLUDE(CPack)
|
||||
|
||||
|
||||
12
INSTALL.Qt5
@@ -1,12 +0,0 @@
|
||||
First of all please note that CMake >= 2.8.11 is required for building with
|
||||
Qt5 support. In order to build LMMS with Qt5, add the following flag when
|
||||
invoking cmake:
|
||||
|
||||
-DWANT_QT5=ON
|
||||
|
||||
If your Qt5 installation does not reside in standard installation paths,
|
||||
additionally pass e.g.
|
||||
|
||||
-DCMAKE_PREFIX_PATH=/opt/qt53/
|
||||
|
||||
|
||||
@@ -31,3 +31,18 @@ If you want to supply an install prefix to cmake, add the flag:
|
||||
|
||||
Where <prefix> can be /usr, /usr/local, /opt, etc. The default is /usr/local.
|
||||
|
||||
|
||||
|
||||
Building with QT5
|
||||
|
||||
First of all please note that CMake >= 2.8.11 is required for building with
|
||||
Qt5 support. In order to build LMMS with Qt5, add the following flag when
|
||||
invoking cmake:
|
||||
|
||||
-DWANT_QT5=ON
|
||||
|
||||
If your Qt5 installation does not reside in standard installation paths,
|
||||
additionally pass e.g.
|
||||
|
||||
-DCMAKE_PREFIX_PATH=/opt/qt53/
|
||||
|
||||
110
README
@@ -1,110 +0,0 @@
|
||||
LMMS 1.1.0
|
||||
===========
|
||||
|
||||
Copyright (c) 2004-2015 by LMMS developers
|
||||
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 2 of the License, or (at your option)
|
||||
any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
||||
details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
|
||||
|
||||
What is LMMS?
|
||||
--------------
|
||||
|
||||
LMMS is a free cross-platform alternative to commercial programs like FL Studio
|
||||
(R), which allow you to produce music with your computer. This includes the
|
||||
creation of melodies and beats, the synthesis and mixing of sounds, and
|
||||
arranging of samples. You can have fun with your MIDI-keyboard and much more;
|
||||
all in a user-friendly and modern interface.
|
||||
|
||||
|
||||
Features
|
||||
---------
|
||||
|
||||
* Song-Editor for composing songs
|
||||
* A Beat+Bassline-Editor for creating beats and basslines
|
||||
* An easy-to-use Piano-Roll for editing patterns and melodies
|
||||
* An FX mixer with 64 FX channels and arbitrary number of effects allow unlimited mixing possibilities
|
||||
* Many powerful instrument and effect-plugins out of the box
|
||||
* Full user-defined track-based automation and computer-controlled automation sources
|
||||
* Compatible with many standards such as SoundFont2, VST(i), LADSPA, GUS Patches, and full MIDI support
|
||||
* Import of MIDI and FLP (Fruityloops(R) Project) files
|
||||
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
The most important requirement is for sure a fast computer, so don't try to get
|
||||
LMMS working on a pentium I with 60 MHz... ;-) Therefore you should have at
|
||||
least 500 MHz, but for really enjoying LMMS less than 1 GHz makes no sense...
|
||||
|
||||
|
||||
Required libraries:
|
||||
|
||||
- Qt >= 4.3.0 with devel-files (4.4.x recommended)
|
||||
|
||||
Optional, but strongly recommended:
|
||||
- JACK with devel-files
|
||||
- libvorbis & libogg with devel-files
|
||||
- libalsa with devel-files
|
||||
- SDL with devel-files
|
||||
- libsamplerate >= 0.1.7 with devel-files
|
||||
- libsndfile with devel-files
|
||||
- WINE + WINE-devel-files
|
||||
- stk, libstk + libstk-dev
|
||||
- libfluidsynth with devel files
|
||||
- fftw3 with devel-files
|
||||
- libfltk1.3 with devel-files (needed by ZynAddSubFx)
|
||||
|
||||
For compiling you should have an up to date GCC with g++.
|
||||
|
||||
If you have problems with compiling or running LMMS, find any bug or have
|
||||
suggestions and so on, please feel free to e-mail me (for mail-address see
|
||||
below)!
|
||||
|
||||
|
||||
|
||||
Building
|
||||
---------
|
||||
|
||||
See INSTALL for information on how to build LMMS.
|
||||
|
||||
|
||||
|
||||
|
||||
Join LMMS-development
|
||||
----------------------
|
||||
|
||||
If you are interested in LMMS, its programming, artwork, testing, writing
|
||||
demo songs, (and improving this README...) or something like that,
|
||||
you're welcome to participate in the development of LMMS!
|
||||
|
||||
The project homepage of LMMS, mailing lists and a list of things you can do
|
||||
can be found at
|
||||
|
||||
http://lmms.io/
|
||||
|
||||
|
||||
Details on development can be found in the Wiki:
|
||||
|
||||
https://github.com/LMMS/lmms/wiki
|
||||
|
||||
|
||||
Before coding a new big feature, please ALWAYS file an issue at
|
||||
https://github.com/LMMS/lmms/issues/new for your idea and suggestions about your
|
||||
feature and about the intended implementation or post to the LMMS developers
|
||||
mailing list (lmms-devel@lists.sourceforge.net) and wait for replies!
|
||||
Maybe there are different ideas, improvements, hints or maybe your feature is
|
||||
not welcome/needed at the moment.
|
||||
32
TODO
@@ -1,32 +0,0 @@
|
||||
Version 0.4.x
|
||||
=============
|
||||
|
||||
- save tco-settings in trackContentWidget::saveSettings() etc. instead of
|
||||
track::...
|
||||
- resample sample-track-tcos when exporting at different samplerate
|
||||
- message to user when importing unsupported MIDI-file (track-count = 0)
|
||||
- piano roll: mouse cursor isn't updated correctly in selection mode
|
||||
(from resizing note edit area)
|
||||
- when you add vestige, have it automatically pop the find VST plugin dialog
|
||||
- try to make vestige-plugin-dlls relative
|
||||
- select all MIDI devices by default when you bring up the "connect to controller"
|
||||
window and wait for first event - then uncheck all other MIDI devices that no
|
||||
events were detected from
|
||||
- load asdlol.mmpz. if you render it without playing it, or if you play it
|
||||
the first time, you hear unwanted artifacts. (solution: apply automation
|
||||
before playing)
|
||||
- autosave every 30s (configurable!) and offer recovery at startup after crash
|
||||
- speed up painting of sampleTCO
|
||||
- do not process effects when playing frozen patterns
|
||||
- copy-pasted automation patterns have to be manually linked back to
|
||||
their knob for some reason
|
||||
- improve TrackLabelButton: split 80%-20% (80%=name, 20%=button showing a popup
|
||||
menu with track operations, make the midi input a top-level menu item)
|
||||
- when you click and drag a mixer bar, it doesn't click and drag, it sets
|
||||
absolutely. this is annoying
|
||||
|
||||
|
||||
See TODO file in master branch and/or the TODO list in the Wiki for details
|
||||
regarding the development series.
|
||||
|
||||
|
||||
27
cmake/CMakeLists.txt
Normal file
@@ -0,0 +1,27 @@
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_DESCRIPTION}")
|
||||
SET(CPACK_PACKAGE_VENDOR "${PROJECT_AUTHOR}")
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README.md")
|
||||
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE.txt")
|
||||
SET(CPACK_PACKAGE_VERSION_MAJOR "${VERSION_MAJOR}")
|
||||
SET(CPACK_PACKAGE_VERSION_MINOR "${VERSION_MINOR}")
|
||||
SET(CPACK_PACKAGE_VERSION_PATCH "${VERSION_PATCH}")
|
||||
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "${PROJECT_NAME_UCASE}")
|
||||
SET(CPACK_SOURCE_GENERATOR "TBZ2")
|
||||
SET(CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}")
|
||||
IF(VERSION_SUFFIX)
|
||||
SET(CPACK_PACKAGE_VERSION_PATCH "${VERSION_PATCH}-${VERSION_SUFFIX}")
|
||||
ENDIF()
|
||||
IF(NOT DEFINED WIN32)
|
||||
SET(CPACK_STRIP_FILES "bin/${CMAKE_PROJECT_NAME};${PLUGIN_DIR}/*.so")
|
||||
SET(CPACK_PACKAGE_EXECUTABLES "${CMAKE_PROJECT_NAME}" "${PROJECT_NAME_UCASE} binary")
|
||||
ENDIF()
|
||||
|
||||
IF(LMMS_BUILD_WIN32)
|
||||
ADD_SUBDIRECTORY(nsis)
|
||||
ELSEIF(LMMS_BUILD_APPLE)
|
||||
ADD_SUBDIRECTORY(apple)
|
||||
ELSE()
|
||||
ADD_SUBDIRECTORY(linux)
|
||||
ENDIF()
|
||||
|
||||
INCLUDE(CPack)
|
||||
24
cmake/apple/CMakeLists.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
SET(MACOSX_BUNDLE_ICON_FILE "lmms.icns")
|
||||
SET(MACOSX_BUNDLE_GUI_IDENTIFIER "${PROJECT_NAME_UCASE}")
|
||||
SET(MACOSX_BUNDLE_LONG_VERSION_STRING "${VERSION}")
|
||||
SET(MACOSX_BUNDLE_BUNDLE_NAME "${PROJECT_NAME_UCASE}")
|
||||
SET(MACOSX_BUNDLE_SHORT_VERSION_STRING "${VERSION}")
|
||||
SET(MACOSX_BUNDLE_BUNDLE_VERSION "${VERSION}")
|
||||
SET(MACOSX_BUNDLE_COPYRIGHT "${PROJECT_COPYRIGHT}")
|
||||
SET(MACOSX_BUNDLE_MIMETYPE "application/x-lmms-project")
|
||||
SET(MACOSX_BUNDLE_MIMETYPE_ICON "project.icns")
|
||||
SET(MACOSX_BUNDLE_MIMETYPE_ID "io.lmms")
|
||||
SET(MACOSX_BUNDLE_PROJECT_URL "${PROJECT_URL}")
|
||||
|
||||
CONFIGURE_FILE("lmms.plist.in" "${CMAKE_INSTALL_PREFIX}/Info.plist")
|
||||
CONFIGURE_FILE("install_apple.sh.in" "${CMAKE_BINARY_DIR}/install_apple.sh" @ONLY)
|
||||
CONFIGURE_FILE("package_apple.sh.in" "${CMAKE_BINARY_DIR}/package_apple.sh" @ONLY)
|
||||
|
||||
# Add execute permissions to install script
|
||||
EXECUTE_PROCESS(COMMAND chmod u+x ${CMAKE_BINARY_DIR}/install_apple.sh)
|
||||
INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_BINARY_DIR}/install_apple.sh)")
|
||||
|
||||
# TODO: Add PACKAGE target using package_apple_dmg.sh
|
||||
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
@@ -1,5 +1,5 @@
|
||||
#!/bin/bash
|
||||
#title :create_applet_installer.sh
|
||||
#title :install_apple.sh
|
||||
#description :Creates Apple ".app" bundle for LMMS
|
||||
#author :Tres Finocchiaro
|
||||
#date :20140504
|
||||
@@ -32,8 +32,8 @@ APP=${HOME}/Desktop/LMMS.app
|
||||
LIBREADLINE=${MACPORTS}/lib/libreadline.6.2.dylib
|
||||
|
||||
# The DMG packager script location
|
||||
DMG_SCRIPT_SRC=${CMAKE_BUILD}/create_apple_dmg.sh
|
||||
DMG_SCRIPT_DST=${HOME}/Desktop/create_apple_dmg.sh
|
||||
DMG_SCRIPT_SRC=${CMAKE_BUILD}/package_apple.sh
|
||||
DMG_SCRIPT_DST=${HOME}/Desktop/package_apple.sh
|
||||
|
||||
#=========================================================================================
|
||||
|
||||
@@ -111,7 +111,7 @@ _executables="${_executables} -executable=${APP}/Contents/Frameworks/libZynAddSu
|
||||
macdeployqt ${APP} $_executables
|
||||
|
||||
# OS X Specific Artwork
|
||||
cp ${CMAKE_SRC}/data/*.icns ${APP}/Contents/Resources/
|
||||
cp ${CMAKE_SRC}/cmake/apple/*.icns ${APP}/Contents/Resources/
|
||||
|
||||
# Done. Ready to build DMG
|
||||
echo -e "\nFinished.\n\nYou may run LMMS from the Desktop."
|
||||
@@ -13,7 +13,7 @@ fi
|
||||
APP_NAME="@MACOSX_BUNDLE_BUNDLE_NAME@"
|
||||
VERSION="@MACOSX_BUNDLE_LONG_VERSION_STRING@"
|
||||
DMG_BACKGROUND_IMG="dmg_branding.png"
|
||||
cp "@CMAKE_SOURCE_DIR@/data/${DMG_BACKGROUND_IMG}" .
|
||||
cp "@CMAKE_SOURCE_DIR@/cmake/apple/${DMG_BACKGROUND_IMG}" .
|
||||
|
||||
# you should not need to change these
|
||||
OS_VER=`sw_vers -productVersion|cut -d"." -f1-2`
|
||||
4
cmake/linux/CMakeLists.txt
Normal file
@@ -0,0 +1,4 @@
|
||||
INSTALL(FILES lmms.png DESTINATION "${DATA_DIR}/pixmaps")
|
||||
INSTALL(FILES lmms DESTINATION "${DATA_DIR}/menu")
|
||||
INSTALL(FILES lmms.desktop DESTINATION "${DATA_DIR}/applications")
|
||||
INSTALL(FILES lmms.xml DESTINATION "${DATA_DIR}/mime/packages")
|
||||
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 93 KiB |
36
cmake/nsis/CMakeLists.txt
Normal file
@@ -0,0 +1,36 @@
|
||||
SET(CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/cmake/nsis/nsis_branding.bmp" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_MUI_ICON "${CMAKE_SOURCE_DIR}/cmake/nsis/lmms.ico" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_INSTALLED_ICON_NAME "${CMAKE_PROJECT_NAME}.exe" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_DISPLAY_NAME "${PROJECT_NAME_UCASE} ${VERSION}" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_HELP_LINK "${PROJECT_URL}" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_URL_INFO_ABOUT "${PROJECT_URL}" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_CONTACT "${PROJECT_EMAIL}" PARENT_SCOPE)
|
||||
SET(CPACK_PACKAGE_EXECUTABLES "${CMAKE_PROJECT_NAME}.exe;${PROJECT_NAME_UCASE}" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_MENU_LINKS "${CMAKE_PROJECT_NAME}.exe;${PROJECT_NAME_UCASE}" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_DEFINES "!include ${CMAKE_SOURCE_DIR}/cmake/nsis/FileAssociation.nsh")
|
||||
SET(CPACK_NSIS_DEFINES "${CPACK_NSIS_DEFINES}" PARENT_SCOPE)
|
||||
SET(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}-win32" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS "
|
||||
\\\${registerExtension} \\\"$INSTDIR\\\\${CMAKE_PROJECT_NAME}.exe\\\" \\\".mmp\\\" \\\"${PROJECT_NAME_UCASE} Project\\\"
|
||||
\\\${registerExtension} \\\"$INSTDIR\\\\${CMAKE_PROJECT_NAME}.exe\\\" \\\".mmpz\\\" \\\"${PROJECT_NAME_UCASE} Project (compressed)\\\"
|
||||
" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS "
|
||||
\\\${unregisterExtension} \\\".mmp\\\" \\\"${PROJECT_NAME_UCASE} Project\\\"
|
||||
\\\${unregisterExtension} \\\".mmpz\\\" \\\"${PROJECT_NAME_UCASE} Project (compressed)\\\"
|
||||
DeleteRegKey HKCR \\\"${PROJECT_NAME_UCASE} Project\\\"
|
||||
DeleteRegKey HKCR \\\"${PROJECT_NAME_UCASE} Project (compressed)\\\"
|
||||
" PARENT_SCOPE)
|
||||
|
||||
IF(WIN64)
|
||||
SET(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}-win64" PARENT_SCOPE)
|
||||
SET(CPACK_NSIS_DEFINES "${CPACK_NSIS_DEFINES}
|
||||
InstallDir \\\"\\\$PROGRAMFILES64\\\\${CPACK_PACKAGE_INSTALL_DIRECTORY}\\\"" PARENT_SCOPE)
|
||||
ENDIF()
|
||||
|
||||
# Windows resource compilers
|
||||
CONFIGURE_FILE("lmms.rc.in" "${CMAKE_BINARY_DIR}/lmms.rc")
|
||||
CONFIGURE_FILE("zynaddsubfx.rc.in" "${CMAKE_BINARY_DIR}/plugins/zynaddsubfx/zynaddsubfx.rc")
|
||||
|
||||
FILE(GLOB RAWWAVES "${CMAKE_INSTALL_PREFIX}/share/stk/rawwaves/*.raw")
|
||||
INSTALL(FILES ${RAWWAVES} DESTINATION "${DATA_DIR}/stk/rawwaves")
|
||||
|
||||
|
Before Width: | Height: | Size: 134 KiB After Width: | Height: | Size: 134 KiB |
26
cmake/nsis/lmms.rc.in
Normal file
@@ -0,0 +1,26 @@
|
||||
lmmsicon ICON cmake/nsis/lmms.ico
|
||||
#include <windows.h>
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION @VERSION_MAJOR@,@VERSION_MINOR@,@VERSION_PATCH@,0
|
||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||
FILEOS VOS_NT_WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE VFT2_UNKNOWN
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904E4"
|
||||
//language ID = U.S. English, charset = Windows, Multilingual
|
||||
BEGIN
|
||||
VALUE "Comments", "${PROJECT_URL}\0"
|
||||
VALUE "CompanyName", "${PROJECT_AUTHOR}\0"
|
||||
VALUE "FileDescription", "${PROJECT_NAME_UCASE}\0"
|
||||
VALUE "FileVersion", "@VERSION@\0"
|
||||
VALUE "LegalCopyright", "Copyright (c) ${PROJECT_COPYRIGHT}\0"
|
||||
VALUE "OriginalFilename", "${CMAKE_PROJECT_NAME}.exe\0"
|
||||
VALUE "ProductName", "${PROJECT_NAME_UCASE}\0"
|
||||
VALUE "ProductVersion", "@VERSION@\0"
|
||||
END
|
||||
END
|
||||
END
|
||||
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.5 KiB |
26
cmake/nsis/zynaddsubfx.rc.in
Normal file
@@ -0,0 +1,26 @@
|
||||
zynaddsubfx_icon ICON zynaddsubfx/zynaddsubfx.ico
|
||||
#include <windows.h>
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 0,2,3,0
|
||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||
FILEOS VOS_NT_WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE VFT2_UNKNOWN
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904E4"
|
||||
//language ID = U.S. English, charset = Windows, Multilingual
|
||||
BEGIN
|
||||
VALUE "Comments", "ZynAddSubFX Plugin - ${PROJECT_NAME_UCASE} (${PROJECT_URL})\0"
|
||||
VALUE "CompanyName", "${PROJECT_AUTHOR}\0"
|
||||
VALUE "FileDescription", "ZynAddSubFX ${PROJECT_NAME_UCASE} Plugin\0"
|
||||
VALUE "FileVersion", "2.3.0/@VERSION@\0"
|
||||
VALUE "LegalCopyright", "Copyright (c) Nasca Octavian Paul, Mark McCurry, Harald Hvaal, Tobias Doerffel\0"
|
||||
VALUE "OriginalFilename", "RemoteZynAddSubFx.exe\0"
|
||||
VALUE "ProductName", "ZynAddSubFX/${PROJECT_NAME_UCASE}\0"
|
||||
VALUE "ProductVersion", "2.3.0/@VERSION@\0"
|
||||
END
|
||||
END
|
||||
END
|
||||
6
configure
vendored
@@ -1,6 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "Usage of configure & Co is deprecated! Please see the INSTALL file:"
|
||||
echo ""
|
||||
|
||||
cat INSTALL
|
||||
@@ -5,20 +5,3 @@ ADD_SUBDIRECTORY(projects)
|
||||
ADD_SUBDIRECTORY(samples)
|
||||
ADD_SUBDIRECTORY(themes)
|
||||
ADD_SUBDIRECTORY(wavetables)
|
||||
ADD_SUBDIRECTORY(scripts)
|
||||
|
||||
IF(LMMS_BUILD_LINUX)
|
||||
INSTALL(FILES themes/default/icon.png DESTINATION "${DATA_DIR}/pixmaps" RENAME lmms.png)
|
||||
INSTALL(FILES lmms DESTINATION "${DATA_DIR}/menu")
|
||||
INSTALL(FILES lmms.desktop DESTINATION "${DATA_DIR}/applications")
|
||||
INSTALL(FILES lmms.xml DESTINATION "${DATA_DIR}/mime/packages")
|
||||
ENDIF(LMMS_BUILD_LINUX)
|
||||
|
||||
IF(LMMS_BUILD_WIN32)
|
||||
FILE(GLOB RAWWAVES "${CMAKE_INSTALL_PREFIX}/share/stk/rawwaves/*.raw")
|
||||
INSTALL(FILES ${RAWWAVES} DESTINATION "${DATA_DIR}/stk/rawwaves")
|
||||
ENDIF(LMMS_BUILD_WIN32)
|
||||
|
||||
IF(LMMS_BUILD_APPLE)
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/data/lmms.plist.in" "${CMAKE_INSTALL_PREFIX}/Info.plist")
|
||||
ENDIF(LMMS_BUILD_APPLE)
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
SET(BUILD_ROOT "${CMAKE_CURRENT_BINARY_DIR}/../../")
|
||||
IF(LMMS_BUILD_APPLE)
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/data/scripts/create_apple_bundle.sh.in"
|
||||
"${BUILD_ROOT}/create_apple_bundle.sh" @ONLY)
|
||||
CONFIGURE_FILE("${CMAKE_SOURCE_DIR}/data/scripts/create_apple_dmg.sh.in"
|
||||
"${BUILD_ROOT}/create_apple_dmg.sh" @ONLY)
|
||||
# Add execute permissions to bundle script
|
||||
SET(CHMOD_CMD "chmod")
|
||||
SET(CHMOD_ARG1 "u+x")
|
||||
SET(CHMOD_ARG2 "${BUILD_ROOT}/create_apple_bundle.sh")
|
||||
EXECUTE_PROCESS(COMMAND ${CHMOD_CMD} ${CHMOD_ARG1} ${CHMOD_ARG2})
|
||||
INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${BUILD_ROOT}/create_apple_bundle.sh)")
|
||||
ENDIF(LMMS_BUILD_APPLE)
|
||||
26
lmms.rc.in
@@ -1,26 +0,0 @@
|
||||
lmmsicon ICON data/lmms.ico
|
||||
#include <windows.h>
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION @VERSION_MAJOR@,@VERSION_MINOR@,@VERSION_PATCH@,0
|
||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||
FILEOS VOS_NT_WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE VFT2_UNKNOWN
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904E4"
|
||||
//language ID = U.S. English, charset = Windows, Multilingual
|
||||
BEGIN
|
||||
VALUE "Comments", "https://lmms.io\0"
|
||||
VALUE "CompanyName", "LMMS Developers\0"
|
||||
VALUE "FileDescription", "LMMS\0"
|
||||
VALUE "FileVersion", "@VERSION@\0"
|
||||
VALUE "LegalCopyright", "Copyright (c) 2004-2015 LMMS Developers\0"
|
||||
VALUE "OriginalFilename", "lmms.exe\0"
|
||||
VALUE "ProductName", "LMMS\0"
|
||||
VALUE "ProductVersion", "@VERSION@\0"
|
||||
END
|
||||
END
|
||||
END
|
||||
@@ -1,3 +1,6 @@
|
||||
CONFIGURE_FILE("lmmsconfig.h.in" "${CMAKE_BINARY_DIR}/lmmsconfig.h")
|
||||
CONFIGURE_FILE("lmmsversion.h.in" "${CMAKE_BINARY_DIR}/lmmsversion.h")
|
||||
|
||||
SET(LMMS_SRCS "")
|
||||
SET(LMMS_UIS "")
|
||||
|
||||
@@ -31,7 +34,7 @@ IF(WIN32)
|
||||
DEPENDS "${CMAKE_BINARY_DIR}/lmms.rc")
|
||||
ENDIF()
|
||||
|
||||
SET(lmms_EMBEDDED_RESOURCES "${CMAKE_SOURCE_DIR}/AUTHORS" "${CMAKE_SOURCE_DIR}/COPYING" "${CONTRIBUTORS}")
|
||||
SET(lmms_EMBEDDED_RESOURCES "${CMAKE_SOURCE_DIR}/doc/AUTHORS" "${CMAKE_SOURCE_DIR}/LICENSE.txt" "${CONTRIBUTORS}")
|
||||
SET(LMMS_ER_H "${CMAKE_CURRENT_BINARY_DIR}/embedded_resources.h")
|
||||
ADD_CUSTOM_COMMAND(OUTPUT "${LMMS_ER_H}" COMMAND "${BIN2RES}" ARGS ${lmms_EMBEDDED_RESOURCES} > "\"${LMMS_ER_H}\"" DEPENDS bin2res)
|
||||
|
||||
|
||||