From b8be38ce8b2a146e48cbadaddef3cba4475c03e4 Mon Sep 17 00:00:00 2001 From: don Date: Fri, 16 Dec 2011 21:51:42 -0600 Subject: improve OPENSCAD_LIBRARIES for freebsd diff --git a/openscad.pro b/openscad.pro index ac4200e..60870be 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 + INCLUDEPATH = $$OPENSCAD_LIBDIR/include $$INCLUDEPATH + QMAKE_LIBDIR = $$OPENSCAD_LIBDIR/lib $$QMAKE_LIBDIR } else { macx { -- cgit v0.10.1 From b6a01a76b98377983a562b36a757483a01d3cfa2 Mon Sep 17 00:00:00 2001 From: don bright Date: Fri, 16 Dec 2011 17:33:31 -0800 Subject: fix compilation on Fedora: boost, flex, and OPENSCAD_LIBRARIES diff --git a/boost.pri b/boost.pri index 46cbb83..168e64c 100644 --- a/boost.pri +++ b/boost.pri @@ -9,18 +9,34 @@ boost { win32:QMAKE_LIBDIR += -L$$BOOST_DIR/lib } + ORIGINAL_LIBS_VALUE = $$LIBS + + win32 { + LIBS += -llibboost_thread-vc90-mt-s-1_46_1 -llibboost_program_options-vc90-mt-s-1_46_1 + } + + exists(/usr/lib64/libboost*thread-mt*) { + LIBS += -lboost_thread-mt -lboost_program_options-mt + BOOST_IS_MT = true + } + + exists(/usr/lib/libboost*thread-mt*) { + LIBS *= -lboost_thread-mt -lboost_program_options-mt + BOOST_IS_MT = true + } + + isEmpty(BOOST_IS_MT) { + unix|macx { + LIBS += -lboost_thread -lboost_program_options + } + } + CONFIG(mingw-cross-env) { + LIBS = $$ORIGINAL_LIBS_VALUE # erase, start over 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 - LIBS += -lboost_thread -lboost_program_options - } - } + } + } diff --git a/flex.pri b/flex.pri index ef0b742..ce78b98 100644 --- a/flex.pri +++ b/flex.pri @@ -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 60870be..80687f0 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) { - INCLUDEPATH = $$OPENSCAD_LIBDIR/include $$INCLUDEPATH - QMAKE_LIBDIR = $$OPENSCAD_LIBDIR/lib $$QMAKE_LIBDIR + QMAKE_INCDIR_QT = $$OPENSCAD_LIBDIR/include $$QMAKE_INCDIR_QT + QMAKE_LIBDIR_QT = $$OPENSCAD_LIBDIR/lib $$QMAKE_LIBDIR_QT } else { macx { @@ -77,6 +77,10 @@ win32 { CONFIG += qt QT += opengl +linux*:exists(/usr/lib64/libGLU*)|linux*:exists(/usr/lib/libGLU*) { + LIBS += -lGLU # Fedora + DSO +} + # Application configuration macx:CONFIG += mdi CONFIG += cgal -- cgit v0.10.1 From a7ebe941998768fe1015fc1b6d528690bdf19701 Mon Sep 17 00:00:00 2001 From: Don Bright Date: Fri, 16 Dec 2011 21:03:10 -0600 Subject: fix qmake under mingw-cross-compile diff --git a/openscad.pro b/openscad.pro index 160eaa1..e38251a 100644 --- a/openscad.pro +++ b/openscad.pro @@ -77,8 +77,13 @@ win32 { CONFIG += qt QT += opengl +# Fedora Linux + DSO fix linux*:exists(/usr/lib64/libGLU*)|linux*:exists(/usr/lib/libGLU*) { - LIBS += -lGLU # Fedora + DSO + LIBS += -lGLU +} + +CONFIG(mingw-cross-env) { + include(mingw-cross-env.pri) } # Application configuration diff --git a/win32.pri b/win32.pri index 7a020d7..bb41b09 100644 --- a/win32.pri +++ b/win32.pri @@ -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 +} -- cgit v0.10.1 From 609e59d4ccd73ec8e9d6c3e691352623d58d8cba Mon Sep 17 00:00:00 2001 From: don Date: Sat, 17 Dec 2011 01:56:24 -0600 Subject: fix OPENSCAD_LIBRARIES on FreeBSD diff --git a/openscad.pro b/openscad.pro index 80687f0..160eaa1 100644 --- a/openscad.pro +++ b/openscad.pro @@ -41,7 +41,7 @@ INCLUDEPATH += src OPENSCAD_LIBDIR = $$(OPENSCAD_LIBRARIES) !isEmpty(OPENSCAD_LIBDIR) { QMAKE_INCDIR_QT = $$OPENSCAD_LIBDIR/include $$QMAKE_INCDIR_QT - QMAKE_LIBDIR_QT = $$OPENSCAD_LIBDIR/lib $$QMAKE_LIBDIR_QT + QMAKE_LIBDIR = $$OPENSCAD_LIBDIR/lib $$QMAKE_LIBDIR } else { macx { -- cgit v0.10.1 From 6bccf5be43af0947103cdd6ebac5a30615f55c84 Mon Sep 17 00:00:00 2001 From: Don Bright Date: Fri, 16 Dec 2011 21:51:07 -0600 Subject: make EIGEN2DIR prepend to -I not append. make boost MT detection use BOOSTDIR diff --git a/boost.pri b/boost.pri index 168e64c..42fe529 100644 --- a/boost.pri +++ b/boost.pri @@ -9,34 +9,32 @@ boost { win32:QMAKE_LIBDIR += -L$$BOOST_DIR/lib } - ORIGINAL_LIBS_VALUE = $$LIBS - - win32 { + win32:!CONFIG(mingw-cross-env) { LIBS += -llibboost_thread-vc90-mt-s-1_46_1 -llibboost_program_options-vc90-mt-s-1_46_1 - } - - exists(/usr/lib64/libboost*thread-mt*) { - LIBS += -lboost_thread-mt -lboost_program_options-mt - BOOST_IS_MT = true - } - - exists(/usr/lib/libboost*thread-mt*) { - LIBS *= -lboost_thread-mt -lboost_program_options-mt - BOOST_IS_MT = true } - isEmpty(BOOST_IS_MT) { - unix|macx { - LIBS += -lboost_thread -lboost_program_options - } - } - CONFIG(mingw-cross-env) { - LIBS = $$ORIGINAL_LIBS_VALUE # erase, start over DEFINES += BOOST_STATIC DEFINES += BOOST_THREAD_USE_LIB DEFINES += Boost_USE_STATIC_LIBS LIBS += -lboost_thread_win32-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 + } + } + } diff --git a/eigen2.pri b/eigen2.pri index 8b955e3..3d7017b 100644 --- a/eigen2.pri +++ b/eigen2.pri @@ -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++: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 -- cgit v0.10.1 From fd0e4297152a1ce07d7582720d0acf95d0a3defa Mon Sep 17 00:00:00 2001 From: Don Bright Date: Fri, 16 Dec 2011 22:36:54 -0600 Subject: fix bug boost.pri (unix* -> unix) diff --git a/boost.pri b/boost.pri index 42fe529..25d47e7 100644 --- a/boost.pri +++ b/boost.pri @@ -31,7 +31,7 @@ boost { } } - unix*|macx { + unix|macx { isEmpty(BOOST_IS_MT) { LIBS += -lboost_thread -lboost_program_options } -- cgit v0.10.1 From 9573fabdb8d1acc18ae6530b78c120070ae59e0e Mon Sep 17 00:00:00 2001 From: don bright Date: Sat, 17 Dec 2011 04:52:13 -0600 Subject: remove /usr/include from win32-MSVC eigen path diff --git a/eigen2.pri b/eigen2.pri index 3d7017b..44649f8 100644 --- a/eigen2.pri +++ b/eigen2.pri @@ -11,7 +11,7 @@ eigen2 { } else { freebsd-g++: EIGEN2_INCLUDEPATH *= /usr/local/include/eigen2 macx: EIGEN2_INCLUDEPATH *= /opt/local/include/eigen2 - !macx:!freebsd-g++:EIGEN2_INCLUDEPATH *= /usr/include/eigen2 + !macx:!freebsd-g++:!win32:EIGEN2_INCLUDEPATH *= /usr/include/eigen2 } } -- cgit v0.10.1 From 6bba101f694afa3c4d97f3507b8b805e3c552590 Mon Sep 17 00:00:00 2001 From: don bright Date: Sat, 17 Dec 2011 05:06:34 -0600 Subject: mt bug fix diff --git a/boost.pri b/boost.pri index 25d47e7..c2f5d8e 100644 --- a/boost.pri +++ b/boost.pri @@ -20,7 +20,7 @@ boost { LIBS += -lboost_thread_win32-mt -lboost_program_options-mt } - unix* { + unix { BMT_TEST1 = /usr/lib64/libboost*thread-mt* BMT_TEST2 = /usr/lib/libboost*thread-mt* BMT_TEST3 = $$BOOST_DIR/lib/libboost*thread-mt* -- cgit v0.10.1