From fb7661c43033fa2c7eb19c5461ee2dcc2878ed3f Mon Sep 17 00:00:00 2001 From: Ser Lev Arris Date: Tue, 7 Apr 2015 08:20:27 +0200 Subject: [PATCH 1/3] add static flag for exe build if no shared build is requested --- .travis.yml | 10 +++++----- CMakeLists.txt | 4 ++++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index ae3a0b983..0630cc268 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,12 +15,12 @@ env: matrix: - LINUX=1 TRAVIS_NO_EXPORT=YES - LINUX=1 TRAVIS_NO_EXPORT=NO - - LINUX=1 TRAVIS_STATIC_BUILD=ON - - LINUX=1 TRAVIS_STATIC_BUILD=OFF + - LINUX=1 SHARED_BUILD=ON + - LINUX=1 SHARED_BUILD=OFF - WINDOWS=1 TRAVIS_NO_EXPORT=YES - WINDOWS=1 TRAVIS_NO_EXPORT=NO - - WINDOWS=1 TRAVIS_STATIC_BUILD=ON - - WINDOWS=1 TRAVIS_STATIC_BUILD=OFF + - WINDOWS=1 SHARED_BUILD=ON + - WINDOWS=1 SHARED_BUILD=OFF - ANDROID=1 language: cpp @@ -38,7 +38,7 @@ script: elif [ $RESERVED ]; then echo "Reserved condition" ; else - cmake -G "Unix Makefiles" -DASSIMP_ENABLE_BOOST_WORKAROUND=YES -DASSIMP_NO_EXPORT=$TRAVIS_NO_EXPORT -STATIC_BUILD=$TRAVIS_STATIC_BUILD ; + cmake -G "Unix Makefiles" -DASSIMP_ENABLE_BOOST_WORKAROUND=YES -DASSIMP_NO_EXPORT=$TRAVIS_NO_EXPORT -DBUILD_SHARED_LIBS=$SHARED_BUILD ; make ; sudo make install ; sudo ldconfig ; diff --git a/CMakeLists.txt b/CMakeLists.txt index 8a3a325be..226ab911f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,10 @@ cmake_minimum_required( VERSION 2.8 ) PROJECT( Assimp ) +if(NOT BUILD_SHARED_LIBS) + set(CMAKE_EXE_LINKER_FLAGS "-static") +endif(NOT BUILD_SHARED_LIBS) + # Define here the needed parameters set (ASSIMP_VERSION_MAJOR 3) set (ASSIMP_VERSION_MINOR 1) From 297e1d21171d0e7c3a87c0d036a4a40589c8f3fa Mon Sep 17 00:00:00 2001 From: arris69 Date: Tue, 7 Apr 2015 16:07:29 +0200 Subject: [PATCH 2/3] it's a difference if it's set to OFF or it's undefined... --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 226ab911f..011f66864 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,7 @@ cmake_minimum_required( VERSION 2.8 ) PROJECT( Assimp ) +option(BUILD_SHARED_LIBS "Build package with shared libraries." OFF) if(NOT BUILD_SHARED_LIBS) set(CMAKE_EXE_LINKER_FLAGS "-static") endif(NOT BUILD_SHARED_LIBS) From 7a6c00ca11e2766331e210a09b54b71b2fbc5e31 Mon Sep 17 00:00:00 2001 From: Ser Lev Arris Date: Wed, 8 Apr 2015 12:34:54 +0200 Subject: [PATCH 3/3] looks like cmake is per design not for building static executables, clang too. =%-| --- CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 011f66864..aa4d35124 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,7 +3,8 @@ PROJECT( Assimp ) option(BUILD_SHARED_LIBS "Build package with shared libraries." OFF) if(NOT BUILD_SHARED_LIBS) - set(CMAKE_EXE_LINKER_FLAGS "-static") + #set(CMAKE_EXE_LINKER_FLAGS "-static") + set(LINK_SEARCH_START_STATIC 1) endif(NOT BUILD_SHARED_LIBS) # Define here the needed parameters