diff options
-rw-r--r-- | boost.pri | 26 | ||||
-rw-r--r-- | eigen2.pri | 15 | ||||
-rw-r--r-- | flex.pri | 10 | ||||
-rw-r--r-- | openscad.pro | 13 | ||||
-rw-r--r-- | win32.pri | 6 |
5 files changed, 53 insertions, 17 deletions
@@ -9,18 +9,32 @@ boost { win32:QMAKE_LIBDIR += -L$$BOOST_DIR/lib } + win32:!CONFIG(mingw-cross-env) { + LIBS += -llibboost_thread-vc90-mt-s-1_46_1 -llibboost_program_options-vc90-mt-s-1_46_1 + } + CONFIG(mingw-cross-env) { DEFINES += BOOST_STATIC DEFINES += BOOST_THREAD_USE_LIB DEFINES += Boost_USE_STATIC_LIBS LIBS += -lboost_thread_win32-mt -lboost_program_options-mt - } else { - win32 { - LIBS += -llibboost_thread-vc90-mt-s-1_46_1 -llibboost_program_options-vc90-mt-s-1_46_1 - } else { - # some platforms have only '-mt' versions. uncomment if needed. - # LIBS += -lboost_thread-mt -lboost_program_options-mt + } + + unix { + BMT_TEST1 = /usr/lib64/libboost*thread-mt* + BMT_TEST2 = /usr/lib/libboost*thread-mt* + BMT_TEST3 = $$BOOST_DIR/lib/libboost*thread-mt* + + exists($$BMT_TEST1)|exists($$BMT_TEST2)|exists($$BMT_TEST3) { + LIBS += -lboost_thread-mt -lboost_program_options-mt + BOOST_IS_MT = true + } + } + + unix|macx { + isEmpty(BOOST_IS_MT) { LIBS += -lboost_thread -lboost_program_options } } + } @@ -3,19 +3,22 @@ eigen2 { # EIGEN2DIR env. variable EIGEN2_DIR = $$(EIGEN2DIR) !isEmpty(EIGEN2_DIR) { - INCLUDEPATH += $$EIGEN2_DIR + EIGEN2_INCLUDEPATH = $$EIGEN2_DIR } else { CONFIG(mingw-cross-env) { - INCLUDEPATH += mingw-cross-env/include/eigen2 + EIGEN2_INCLUDEPATH = mingw-cross-env/include/eigen2 } else { - freebsd-g++: INCLUDEPATH += /usr/local/include/eigen2 - macx: INCLUDEPATH += /opt/local/include/eigen2 - !macx:!freebsd-g++:INCLUDEPATH += /usr/include/eigen2 + freebsd-g++: EIGEN2_INCLUDEPATH *= /usr/local/include/eigen2 + macx: EIGEN2_INCLUDEPATH *= /opt/local/include/eigen2 + !macx:!freebsd-g++:!win32:EIGEN2_INCLUDEPATH *= /usr/include/eigen2 } } - # disable Eigen SIMD optimizations for non-Mac OSX + # eigen2 being under 'include/eigen2' needs special prepending + QMAKE_INCDIR_QT = $$EIGEN2_INCLUDEPATH $$QMAKE_INCDIR_QT + + # disable Eigen SIMD optimizations for platforms where it breaks compilation !macx { !freebsd-g++ { QMAKE_CXXFLAGS += -DEIGEN_DONT_ALIGN @@ -10,6 +10,16 @@ win32 { } unix:freebsd-g++ { + # on bsd /usr/bin/bison is outdated, dont use it QMAKE_LEX = /usr/local/bin/flex QMAKE_YACC = /usr/local/bin/bison } + +unix:linux* { + exists(/usr/bin/flex) { + QMAKE_LEX = /usr/bin/flex + } + exists(/usr/bin/bison) { + QMAKE_YACC = /usr/bin/bison + } +} diff --git a/openscad.pro b/openscad.pro index ac4200e..e38251a 100644 --- a/openscad.pro +++ b/openscad.pro @@ -40,8 +40,8 @@ INCLUDEPATH += src # Used when manually installing 3rd party libraries OPENSCAD_LIBDIR = $$(OPENSCAD_LIBRARIES) !isEmpty(OPENSCAD_LIBDIR) { - QMAKE_INCDIR += $$OPENSCAD_LIBDIR/include - QMAKE_LIBDIR += $$OPENSCAD_LIBDIR/lib + QMAKE_INCDIR_QT = $$OPENSCAD_LIBDIR/include $$QMAKE_INCDIR_QT + QMAKE_LIBDIR = $$OPENSCAD_LIBDIR/lib $$QMAKE_LIBDIR } else { macx { @@ -77,6 +77,15 @@ win32 { CONFIG += qt QT += opengl +# Fedora Linux + DSO fix +linux*:exists(/usr/lib64/libGLU*)|linux*:exists(/usr/lib/libGLU*) { + LIBS += -lGLU +} + +CONFIG(mingw-cross-env) { + include(mingw-cross-env.pri) +} + # Application configuration macx:CONFIG += mdi CONFIG += cgal @@ -1,6 +1,6 @@ -# win32-specific general settings +# win32-specific MSVC compiler general settings -win32 { +win32*msvc* { #configure additional directories INCLUDEPATH += $$(MPIRDIR) INCLUDEPATH += $$(MPFRDIR) @@ -17,4 +17,4 @@ win32 { # lexer uses strdup() & other POSIX stuff QMAKE_CXXFLAGS += -D_CRT_NONSTDC_NO_DEPRECATE -}
\ No newline at end of file +} |