FIND_PACKAGE(Boost REQUIRED)
FIND_PACKAGE(Qt4)
INCLUDE( ${QT_USE_FILE} )
+INCLUDE( Platform )
SET(MOC_HEADERS
mussa.hpp
sequence.cpp
sequence_location.cpp )
+GET_MUSSA_COMPILE_FLAGS(ALG_CFLAGS)
+GET_MUSSA_LINK_FLAGS(ALG_LDFLAGS)
+SET_SOURCE_FILES_PROPERTIES(
+ ${SOURCES} ${MOC_SOURCES}
+ PROPERTIES
+ COMPILE_FLAGS "${ALG_CFLAGS}"
+)
+
ADD_LIBRARY( mussa_core STATIC ${SOURCES} ${MOC_SOURCES})
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR}
${BOOST_INCLUDE_DIR}
${OPEN_gl_LIBRARY}
${QT_LIBRARIES})
-# these are really only needed for gcc on AMD64
-SET_SOURCE_FILES_PROPERTIES(${SOURCES} ${MOC_SOURCES}
- PROPERTIES COMPILE_FLAGS "-fPIC")
-SET_TARGET_PROPERTIES(mussa_core PROPERTIES COMPILE_FLAGS "-fPIC")
-
+SET_TARGET_PROPERTIES(
+ mussa_core PROPERTIES
+ COMPILE_FLAGS "${ALG_CFLAGS}"
+ LINK_FLAGS "${ALG_LDFLAGS}"
+)
ADD_SUBDIRECTORY( test )
ADD_SUBDIRECTORY( tsf )
+FIND_PACKAGE(OpenGL)
+INCLUDE(FindBoost)
+INCLUDE(Platform)
+
SET(SOURCES test_annotation_color.cpp test_color.cpp test_conserved_path.cpp
test_flp.cpp test_glseqbrowser.cpp test_glsequence.cpp
test_main.cpp test_mussa.cpp test_nway.cpp
test_sequence.cpp test_sequence_location.cpp )
+GET_MUSSA_COMPILE_FLAGS(ALG_TEST_CFLAGS)
+GET_MUSSA_LINK_FLAGS(ALG_TEST_LDFLAGS)
# dont you love the number of \ you need to make sure the " shows up in
# the C compiler?
SET(EXAMPLE_DIR ${CMAKE_SOURCE_DIR}/examples)
-SET_SOURCE_FILES_PROPERTIES(${SOURCES}
- COMPILE_FLAGS "-DEXAMPLE_DIR=\\\"${EXAMPLE_DIR}\\\""
- )
-
-FIND_PACKAGE(OpenGL)
-INCLUDE(FindBoost)
+SET_SOURCE_FILES_PROPERTIES(
+ ${SOURCES}
+ COMPILE_FLAGS "-DEXAMPLE_DIR=\\\"${EXAMPLE_DIR}\\\" ${ALG_TEST_CFLAGS}"
+)
ADD_EXECUTABLE(unittest ${SOURCES})
ADD_TEST(core_test ${CMAKE_BINARY_DIR}/alg/test/unittest)
${BOOST_FILESYSTEM_LIBRARY}
mussa_core
${OPENGL_gl_LIBRARY})
+
+SET_TARGET_PROPERTIES(
+ unittest PROPERTIES
+ COMPILE_FLAGS "${ALG_TEST_CFLAGS}"
+ LINK_FLAGS "${ALG_TEST_LDFLAGS}"
+)
+
INCLUDE(FindBoost)
+INCLUDE(Platform)
+
SET(SOURCES trivial_filter.cpp)
SET(TEST_SOURCES test_tsf.cpp)
+GET_MUSSA_COMPILE_FLAGS(TSF_CFLAGS)
+GET_MUSSA_LINK_FLAGS(TSF_LDFLAGS)
+
+# this is a hack because the -isysroot stuff for universal binaries
+# breaks /usr/local/include
+SET_SOURCE_FILES_PROPERTIES(
+ ${SOURCES} ${TEST_SOURCES}
+ PROPERTIES
+ COMPILE_FLAGS "${TSF_CFLAGS}"
+)
+
ADD_EXECUTABLE(tsf ${SOURCES} ${TEST_SOURCES} )
TARGET_LINK_LIBRARIES(tsf ${BOOST_UNIT_TEST_LIBRARY})
-ADD_TEST(tsf ${CMAKE_BINARY_DIR}/tsf)
+ADD_TEST(tsf ${CMAKE_BINARY_DIR}/alg/tsf/tsf)
+
+SET_TARGET_PROPERTIES(
+ tsf PROPERTIES
+ COMPILE_FLAGS "${TSF_CFLAGS}"
+ LINK_FLAGS "${TSF_LDFLAGS}"
+)
--- /dev/null
+# - Define macros for setting platform specific build options
+# Defines:
+#
+
+MACRO(GET_MUSSA_COMPILE_FLAGS return)
+ SET(return "")
+ IF(APPLE)
+ SET(${return}
+ ${${return}}
+ "-isysroot /Developer/SDKS/MacOSX10.4u.sdk -arch ppc -arch i386 -I/usr/local/include"
+ )
+ ENDIF(APPLE)
+ENDMACRO(GET_MUSSA_COMPILE_FLAGS)
+
+MACRO(GET_MUSSA_LINK_FLAGS return)
+ SET(${return} "")
+ IF(APPLE)
+ SET(${return}
+ ${${return}}
+ "-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386"
+ )
+ ENDIF(APPLE)
+ENDMACRO(GET_MUSSA_LINK_FLAGS)
+
FIND_PACKAGE(Boost)
FIND_PACKAGE(PythonLibs)
+INCLUDE( Platform )
+
SET(MOC_HEADERS
ImageSaveDialog.hpp
ImageScaler.hpp
QT4_WRAP_CPP(MOC_SOURCES ${MOC_HEADERS})
SET(SOURCES ${MOC_SOURCES} ${GUI_SOURCES} ${RCC_SOURCES} ${MAIN_SOURCES})
-# these are really only needed for gcc on AMD64
+GET_MUSSA_COMPILE_FLAGS(QUI_CFLAGS)
+GET_MUSSA_LINK_FLAGS(QUI_LDFLAGS)
+
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH}
${QT_INCLUDES}
${BOOST_INCLUDE_DIR} )
${BOOST_PROGRAM_OPTIONS_LIBRARY}
${BOOST_FILESYSTEM_LIBRARY}
)
+
IF(USE_PYTHON)
- SET_SOURCE_FILES_PROPERTIES(${SOURCES}
- PROPERTIES
- COMPILE_FLAGS "-DUSE_PYTHON=1"
- )
+ SET(CFLAGS "-DUSE_PYTHON=1 ${CFLAGS}")
TARGET_LINK_LIBRARIES(mussagl
${BOOST_PYTHON_LIBRARY}
optimized ${PYTHON_LIBRARIES}
)
ENDIF(USE_PYTHON)
+SET_SOURCE_FILES_PROPERTIES(
+ ${SOURCES} ${MAIN_SOURCES}
+ PROPERTIES
+ COMPILE_FLAGS "${QUI_CFLAGS}"
+)
+SET_TARGET_PROPERTIES(
+ mussagl mussa_qui PROPERTIES
+ COMPILE_FLAGS "${QUI_CFLAGS}"
+ LINK_FLAGS "${QUI_LDFLAGS}"
+)
# we need Cocoa in order to find where our base directory is (AKA bundle)
IF(APPLE)
)
ENDIF(APPLE)
-# these are needed for AMD64 systems but don't hurt on 32bit
-SET_SOURCE_FILES_PROPERTIES(${SOURCES} PROPERTIES COMPILE_FLAGS "-fPIC")
-SET_TARGET_PROPERTIES(mussa_qui PROPERTIES COMPILE_FLAGS "-fPIC")
-SET_TARGET_PROPERTIES(mussagl PROPERTIES COMPILE_FLAGS "-fPIC")
-
ADD_SUBDIRECTORY( test )