gearmulator

Emulation of classic VA synths of the late 90s/2000s that are based on Motorola 56300 family DSPs
Log | Files | Refs | Submodules | README | LICENSE

CMakeLists.txt (2074B)


      1 # pm_java
      2 
      3 if(UNIX)
      4   if(APPLE)
      5     # java not dealt with in CMake -- see pm_mac/pm_mac.xcodeproj
      6   else(APPLE)
      7     # linux
      8     set(JPORTMIDICLASS JPortMidi.class JPortMidiException.class
      9     		       JPortMidiApi.class)
     10     set(PMDEFAULTSCLASS PmDefaultsFrame.class PmDefaults.class)
     11     prepend_path(JPORTMIDICLASS2 jportmidi/ ${JPORTMIDICLASS})
     12     prepend_path(PMDEFAULTSCLASS2 pmdefaults/ ${PMDEFAULTSCLASS})
     13     set(PMDEFAULTS_ALL_CLASSES ${JPORTMIDICLASS2} ${PMDEFAULTSCLASS2})
     14     # message(STATUS "PMDEFAULTS_ALL_CLASSES is " ${PMDEFAULTS_ALL_CLASSES})
     15     add_custom_command(OUTPUT pmdefaults/PmDefaultsFrame.class
     16         COMMAND javac -classpath . pmdefaults/PmDefaultsFrame.java
     17 	MAIN_DEPENDENCY pmdefaults/PmDefaultsFrame.java
     18 	DEPENDS pmdefaults/PmDefaults.java
     19 	WORKING_DIRECTORY pm_java)
     20     add_custom_command(OUTPUT pmdefaults/PmDefaults.class
     21         COMMAND javac -classpath . pmdefaults/PmDefaults.java
     22 	MAIN_DEPENDENCY pmdefaults/PmDefaults.java
     23 	DEPENDS pmdefaults/PmDefaultsFrame.java
     24 	WORKING_DIRECTORY pm_java)
     25     add_custom_command(OUTPUT ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar
     26         COMMAND	cp pmdefaults/portmusic_logo.png .
     27         COMMAND	jar cmf pmdefaults/manifest.txt pmdefaults.jar
     28 		pmdefaults/*.class portmusic_logo.png jportmidi/*.class
     29   	COMMAND chmod +x pmdefaults/pmdefaults
     30 	COMMAND cp pmdefaults/pmdefaults ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
     31 	COMMAND mv pmdefaults.jar ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}
     32 	COMMAND rm portmusic_logo.png
     33 	MAIN_DEPENDENCY pmdefaults/PmDefaults.class
     34 	DEPENDS ${PMDEFAULTS_ALL_CLASSES}
     35 	WORKING_DIRECTORY pm_java)
     36     add_custom_target(pmdefaults_target ALL 
     37         DEPENDS ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar)
     38     # message(STATUS "add_custom_target: pmdefaults.jar")
     39 
     40     # install the libraries (Linux only)
     41     INSTALL(FILES ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults.jar
     42       DESTINATION /usr/share/java)
     43     INSTALL(PROGRAMS ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/pmdefaults
     44       DESTINATION /usr/local/bin)
     45   endif(APPLE)
     46 endif(UNIX)
     47 # In windows, use pm_java/make.bat