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 +} | 
