diff options
author | Andy Cedilnik <andy.cedilnik@kitware.com> | 2004-06-28 18:40:17 (GMT) |
---|---|---|
committer | Andy Cedilnik <andy.cedilnik@kitware.com> | 2004-06-28 18:40:17 (GMT) |
commit | f9b43b9212b1ae2ba4dd9c4f609f8d5093421398 (patch) | |
tree | 3d0d7dc4ceb4f927efa927a568adc2594a58d355 /Tests | |
parent | d392ccaee563a7f757eae72d9b32ea258e846a7c (diff) | |
download | CMake-f9b43b9212b1ae2ba4dd9c4f609f8d5093421398.zip CMake-f9b43b9212b1ae2ba4dd9c4f609f8d5093421398.tar.gz CMake-f9b43b9212b1ae2ba4dd9c4f609f8d5093421398.tar.bz2 |
BUG: Implement installing of shared library versioning and add test for the whole thing
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/SimpleInstall/CMakeLists.txt | 17 | ||||
-rw-r--r-- | Tests/SimpleInstall/inst.cxx | 6 | ||||
-rw-r--r-- | Tests/SimpleInstall/lib4.cxx | 7 | ||||
-rw-r--r-- | Tests/SimpleInstall/lib4.h | 12 | ||||
-rw-r--r-- | Tests/SimpleInstallS2/CMakeLists.txt | 17 | ||||
-rw-r--r-- | Tests/SimpleInstallS2/inst.cxx | 6 | ||||
-rw-r--r-- | Tests/SimpleInstallS2/lib4.cxx | 7 | ||||
-rw-r--r-- | Tests/SimpleInstallS2/lib4.h | 12 |
8 files changed, 76 insertions, 8 deletions
diff --git a/Tests/SimpleInstall/CMakeLists.txt b/Tests/SimpleInstall/CMakeLists.txt index 1d15e56..fc36dd1 100644 --- a/Tests/SimpleInstall/CMakeLists.txt +++ b/Tests/SimpleInstall/CMakeLists.txt @@ -30,6 +30,7 @@ IF(STAGE2) SET(LIBPATHS "${CMAKE_INSTALL_PREFIX}/lib") SET(t1NAMES test1 test1${CMAKE_DEBUG_POSTFIX}) SET(t2NAMES test2 test2${CMAKE_DEBUG_POSTFIX}) + SET(t4NAMES test4 test4${CMAKE_DEBUG_POSTFIX}) IF(CYGWIN OR MINGW) SET(LIBPATHS ${LIBPATHS} "${CMAKE_INSTALL_PREFIX}/bin") @@ -42,10 +43,14 @@ IF(STAGE2) FIND_LIBRARY(TEST2_LIBRARY NAMES ${t2NAMES} PATHS ${LIBPATHS} - DOC "First library") + DOC "Second library") + FIND_LIBRARY(TEST4_LIBRARY + NAMES ${t4NAMES} + PATHS ${LIBPATHS} + DOC "Fourth library") ADD_EXECUTABLE (SimpleInstallS2 inst.cxx foo.c foo.h) - TARGET_LINK_LIBRARIES(SimpleInstallS2 ${TEST1_LIBRARY} ${TEST2_LIBRARY}) + TARGET_LINK_LIBRARIES(SimpleInstallS2 ${TEST1_LIBRARY} ${TEST2_LIBRARY} ${TEST4_LIBRARY}) SET(install_target SimpleInstallS2) INSTALL_TARGETS(/bin SimpleInstallS2) @@ -58,22 +63,26 @@ ELSE(STAGE2) ADD_LIBRARY(test1 STATIC lib1.cxx) ADD_LIBRARY(test2 SHARED lib2.cxx) ADD_LIBRARY(test3 MODULE lib3.cxx) + ADD_LIBRARY(test4 SHARED lib4.cxx) ADD_EXECUTABLE (SimpleInstall inst.cxx foo.c foo.h) - TARGET_LINK_LIBRARIES(SimpleInstall test1 test2) + TARGET_LINK_LIBRARIES(SimpleInstall test1 test2 test4) SET(install_target SimpleInstall) ADD_DEPENDENCIES(SimpleInstall test3) ADD_DEPENDENCIES(test2 test3) + ADD_DEPENDENCIES(test4 test3) INSTALL_TARGETS(/bin SimpleInstall) - INSTALL_TARGETS(/lib test1 test2 test3) + INSTALL_TARGETS(/lib test1 test2 test3 test4) INSTALL_TARGETS(/include lib1.h lib2.h lib3.h) SET_TARGET_PROPERTIES(SimpleInstall PROPERTIES PRE_INSTALL_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/PreInstall.cmake) SET_TARGET_PROPERTIES(SimpleInstall PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/PostInstall.cmake) + #SET_TARGET_PROPERTIES(test4 PROPERTIES VERSION 1.2 SOVERSION 3) + SET_TARGET_PROPERTIES(test4 PROPERTIES VERSION 1.2) ENDIF(STAGE2) ADD_CUSTOM_COMMAND( diff --git a/Tests/SimpleInstall/inst.cxx b/Tests/SimpleInstall/inst.cxx index a933e2b..241a296 100644 --- a/Tests/SimpleInstall/inst.cxx +++ b/Tests/SimpleInstall/inst.cxx @@ -2,6 +2,7 @@ #include "lib1.h" #include "lib2.h" +#include "lib4.h" #include <stdio.h> @@ -17,6 +18,11 @@ int main () printf("Problem with lib2\n"); return 1; } + if ( Lib4Func() != 4.0 ) + { + printf("Problem with lib4\n"); + return 1; + } printf("The value of Foo: %s\n", foo); return SomeFunctionInFoo()-5; } diff --git a/Tests/SimpleInstall/lib4.cxx b/Tests/SimpleInstall/lib4.cxx new file mode 100644 index 0000000..fbfa23a --- /dev/null +++ b/Tests/SimpleInstall/lib4.cxx @@ -0,0 +1,7 @@ +#include "lib4.h" + +float Lib4Func() +{ + return 4.0; +} + diff --git a/Tests/SimpleInstall/lib4.h b/Tests/SimpleInstall/lib4.h new file mode 100644 index 0000000..4b94ea2 --- /dev/null +++ b/Tests/SimpleInstall/lib4.h @@ -0,0 +1,12 @@ +#ifdef _WIN32 +# ifdef test4_EXPORTS +# define CM_TEST_LIB_EXPORT __declspec( dllexport ) +# else +# define CM_TEST_LIB_EXPORT __declspec( dllimport ) +# endif +#else +# define CM_TEST_LIB_EXPORT +#endif + +CM_TEST_LIB_EXPORT float Lib4Func(); + diff --git a/Tests/SimpleInstallS2/CMakeLists.txt b/Tests/SimpleInstallS2/CMakeLists.txt index 1d15e56..fc36dd1 100644 --- a/Tests/SimpleInstallS2/CMakeLists.txt +++ b/Tests/SimpleInstallS2/CMakeLists.txt @@ -30,6 +30,7 @@ IF(STAGE2) SET(LIBPATHS "${CMAKE_INSTALL_PREFIX}/lib") SET(t1NAMES test1 test1${CMAKE_DEBUG_POSTFIX}) SET(t2NAMES test2 test2${CMAKE_DEBUG_POSTFIX}) + SET(t4NAMES test4 test4${CMAKE_DEBUG_POSTFIX}) IF(CYGWIN OR MINGW) SET(LIBPATHS ${LIBPATHS} "${CMAKE_INSTALL_PREFIX}/bin") @@ -42,10 +43,14 @@ IF(STAGE2) FIND_LIBRARY(TEST2_LIBRARY NAMES ${t2NAMES} PATHS ${LIBPATHS} - DOC "First library") + DOC "Second library") + FIND_LIBRARY(TEST4_LIBRARY + NAMES ${t4NAMES} + PATHS ${LIBPATHS} + DOC "Fourth library") ADD_EXECUTABLE (SimpleInstallS2 inst.cxx foo.c foo.h) - TARGET_LINK_LIBRARIES(SimpleInstallS2 ${TEST1_LIBRARY} ${TEST2_LIBRARY}) + TARGET_LINK_LIBRARIES(SimpleInstallS2 ${TEST1_LIBRARY} ${TEST2_LIBRARY} ${TEST4_LIBRARY}) SET(install_target SimpleInstallS2) INSTALL_TARGETS(/bin SimpleInstallS2) @@ -58,22 +63,26 @@ ELSE(STAGE2) ADD_LIBRARY(test1 STATIC lib1.cxx) ADD_LIBRARY(test2 SHARED lib2.cxx) ADD_LIBRARY(test3 MODULE lib3.cxx) + ADD_LIBRARY(test4 SHARED lib4.cxx) ADD_EXECUTABLE (SimpleInstall inst.cxx foo.c foo.h) - TARGET_LINK_LIBRARIES(SimpleInstall test1 test2) + TARGET_LINK_LIBRARIES(SimpleInstall test1 test2 test4) SET(install_target SimpleInstall) ADD_DEPENDENCIES(SimpleInstall test3) ADD_DEPENDENCIES(test2 test3) + ADD_DEPENDENCIES(test4 test3) INSTALL_TARGETS(/bin SimpleInstall) - INSTALL_TARGETS(/lib test1 test2 test3) + INSTALL_TARGETS(/lib test1 test2 test3 test4) INSTALL_TARGETS(/include lib1.h lib2.h lib3.h) SET_TARGET_PROPERTIES(SimpleInstall PROPERTIES PRE_INSTALL_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/PreInstall.cmake) SET_TARGET_PROPERTIES(SimpleInstall PROPERTIES POST_INSTALL_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/PostInstall.cmake) + #SET_TARGET_PROPERTIES(test4 PROPERTIES VERSION 1.2 SOVERSION 3) + SET_TARGET_PROPERTIES(test4 PROPERTIES VERSION 1.2) ENDIF(STAGE2) ADD_CUSTOM_COMMAND( diff --git a/Tests/SimpleInstallS2/inst.cxx b/Tests/SimpleInstallS2/inst.cxx index a933e2b..241a296 100644 --- a/Tests/SimpleInstallS2/inst.cxx +++ b/Tests/SimpleInstallS2/inst.cxx @@ -2,6 +2,7 @@ #include "lib1.h" #include "lib2.h" +#include "lib4.h" #include <stdio.h> @@ -17,6 +18,11 @@ int main () printf("Problem with lib2\n"); return 1; } + if ( Lib4Func() != 4.0 ) + { + printf("Problem with lib4\n"); + return 1; + } printf("The value of Foo: %s\n", foo); return SomeFunctionInFoo()-5; } diff --git a/Tests/SimpleInstallS2/lib4.cxx b/Tests/SimpleInstallS2/lib4.cxx new file mode 100644 index 0000000..fbfa23a --- /dev/null +++ b/Tests/SimpleInstallS2/lib4.cxx @@ -0,0 +1,7 @@ +#include "lib4.h" + +float Lib4Func() +{ + return 4.0; +} + diff --git a/Tests/SimpleInstallS2/lib4.h b/Tests/SimpleInstallS2/lib4.h new file mode 100644 index 0000000..4b94ea2 --- /dev/null +++ b/Tests/SimpleInstallS2/lib4.h @@ -0,0 +1,12 @@ +#ifdef _WIN32 +# ifdef test4_EXPORTS +# define CM_TEST_LIB_EXPORT __declspec( dllexport ) +# else +# define CM_TEST_LIB_EXPORT __declspec( dllimport ) +# endif +#else +# define CM_TEST_LIB_EXPORT +#endif + +CM_TEST_LIB_EXPORT float Lib4Func(); + |