summaryrefslogtreecommitdiffstats
path: root/Tests
diff options
context:
space:
mode:
authorAndy Cedilnik <andy.cedilnik@kitware.com>2004-06-28 18:40:17 (GMT)
committerAndy Cedilnik <andy.cedilnik@kitware.com>2004-06-28 18:40:17 (GMT)
commitf9b43b9212b1ae2ba4dd9c4f609f8d5093421398 (patch)
tree3d0d7dc4ceb4f927efa927a568adc2594a58d355 /Tests
parentd392ccaee563a7f757eae72d9b32ea258e846a7c (diff)
downloadCMake-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.txt17
-rw-r--r--Tests/SimpleInstall/inst.cxx6
-rw-r--r--Tests/SimpleInstall/lib4.cxx7
-rw-r--r--Tests/SimpleInstall/lib4.h12
-rw-r--r--Tests/SimpleInstallS2/CMakeLists.txt17
-rw-r--r--Tests/SimpleInstallS2/inst.cxx6
-rw-r--r--Tests/SimpleInstallS2/lib4.cxx7
-rw-r--r--Tests/SimpleInstallS2/lib4.h12
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();
+