SET(INSTALL_BIN_DIR ${CMAKE_BINARY_DIR}/install ) # jar -cf lapack_linux.jar cpuInfo.class ADD_CUSTOM_TARGET ( lapack_linux.jar ALL jar -cf ${INSTALL_BIN_DIR}/lapack_linux.jar ${INSTALL_BIN_DIR}/cpuInfo.class ${INSTALL_BIN_DIR}/libgetCpuInfo.so DEPENDS ${INSTALL_BIN_DIR}/cpuInfo.class ${INSTALL_BIN_DIR}/libgetCpuInfo.so ) IF( CYGWIN ) SET( JAVAC_ARGS -d `cygpath -w ${INSTALL_BIN_DIR}` -classpath . `cygpath -w ${PROJECT_SOURCE_DIR}/install/cpuInfo.java` ) ELSE( CYGWIN ) SET( JAVAC_ARGS -d ${INSTALL_BIN_DIR} -classpath . ${PROJECT_SOURCE_DIR}/install/cpuInfo.java ) ENDIF( CYGWIN ) # javac -classpath . cpuInfo.java ADD_CUSTOM_COMMAND( OUTPUT ${INSTALL_BIN_DIR}/cpuInfo.class COMMAND javac ARGS ${JAVAC_ARGS} ) # javah -jni -classpath . cpuInfo ADD_CUSTOM_COMMAND( OUTPUT ${INSTALL_BIN_DIR}/cpuInfo.h DEPENDS ${INSTALL_BIN_DIR}/cpuInfo.class COMMAND javah ARGS -jni -d ${INSTALL_BIN_DIR} -classpath . cpuInfo ) # use custom command because the cannot use -fPIC flag # because it interferes with the ebx register used by the assmbley code # gcc getCpuInfo.c -m32 -o libgetCpuInfo.so -shared ADD_CUSTOM_COMMAND( OUTPUT ${INSTALL_BIN_DIR}/libgetCpuInfo.so DEPENDS ${INSTALL_BIN_DIR}/cpuInfo.h COMMAND gcc ARGS ${PROJECT_SOURCE_DIR}/install/getCpuInfo.c -m32 -I${JAVA_INCLUDE_PATH} -I${JAVA_INCLUDE_PATH}/win32 -I${INSTALL_BIN_DIR} -o ${INSTALL_BIN_DIR}/libgetCpuInfo.so -shared ) # interactive commands: #--------------------- # jarsigner -keystore jacklmKeyStore lapack_linux.jar jacklm # Uploading files # --------------- # sftp jacklm@dev.simtk.org # cd www/lapack # sftp> put lapack_linux.jar #