1 INCLUDE(CheckFunctionExists)
3 INSTALL(FILES zip.h DESTINATION include)
5 # from http://www.cmake.org/Wiki/CMakeMacroLibtoolFile
6 MACRO(GET_TARGET_PROPERTY_WITH_DEFAULT _variable _target _property _default_value)
8 GET_TARGET_PROPERTY (${_variable} ${_target} ${_property})
9 IF (${_variable} STREQUAL NOTFOUND)
10 SET (${_variable} ${_default_value})
11 ENDIF (${_variable} STREQUAL NOTFOUND)
13 ENDMACRO (GET_TARGET_PROPERTY_WITH_DEFAULT)
15 MACRO(CREATE_LIBTOOL_FILE _target _install_DIR)
16 GET_TARGET_PROPERTY(_target_location ${_target} LOCATION)
17 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_static_lib ${_target} STATIC_LIB "")
18 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dependency_libs ${_target} LT_DEPENDENCY_LIBS "")
19 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_current ${_target} LT_VERSION_CURRENT 0)
20 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_age ${_target} LT_VERSION_AGE 0)
21 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_revision ${_target} LT_VERSION_REVISION 0)
22 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_installed ${_target} LT_INSTALLED yes)
23 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_shouldnotlink ${_target} LT_SHOULDNOTLINK yes)
24 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dlopen ${_target} LT_DLOPEN "")
25 GET_TARGET_PROPERTY_WITH_DEFAULT(_target_dlpreopen ${_target} LT_DLPREOPEN "")
26 GET_FILENAME_COMPONENT(_laname ${_target_location} NAME_WE)
27 GET_FILENAME_COMPONENT(_soname ${_target_location} NAME)
28 SET(_laname ${_laname}.la)
29 FILE(WRITE ${_laname} "# ${_laname} - a libtool library file, generated by cmake \n")
30 FILE(APPEND ${_laname} "# The name that we can dlopen(3).\n")
31 FILE(APPEND ${_laname} "dlname='${_soname}'\n")
32 FILE(APPEND ${_laname} "# Names of this library\n")
33 FILE(APPEND ${_laname} "library_names='${_soname}.${_target_current}.${_target_age}.${_target_revision} ${_soname}.${_target_current} ${_soname}'\n")
34 FILE(APPEND ${_laname} "# The name of the static archive\n")
35 FILE(APPEND ${_laname} "old_library='${_target_static_lib}'\n")
36 FILE(APPEND ${_laname} "# Libraries that this one depends upon.\n")
37 FILE(APPEND ${_laname} "dependency_libs='${_target_dependency_libs}'\n")
38 FILE(APPEND ${_laname} "# Version information.\n")
39 FILE(APPEND ${_laname} "current=${_target_current}\n")
40 FILE(APPEND ${_laname} "age=${_target_age}\n")
41 FILE(APPEND ${_laname} "revision=${_target_revision}\n")
42 FILE(APPEND ${_laname} "# Is this an already installed library?\n")
43 FILE(APPEND ${_laname} "installed=${_target_installed}\n")
44 FILE(APPEND ${_laname} "# Should we warn about portability when linking against -modules?\n")
45 FILE(APPEND ${_laname} "shouldnotlink=${_target_shouldnotlink}\n")
46 FILE(APPEND ${_laname} "# Files to dlopen/dlpreopen\n")
47 FILE(APPEND ${_laname} "dlopen='${_target_dlopen}'\n")
48 FILE(APPEND ${_laname} "dlpreopen='${_target_dlpreopen}'\n")
49 FILE(APPEND ${_laname} "# Directory that this library needs to be installed in:\n")
50 FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${_install_DIR}'\n")
51 INSTALL( FILES ${_laname} ${_soname}
52 DESTINATION ${CMAKE_INSTALL_PREFIX}${_install_DIR})
53 ENDMACRO(CREATE_LIBTOOL_FILE)
67 zip_error_get_sys_type.c
72 zip_file_error_clear.c
80 zip_fopen_index_encrypted.c
83 zip_get_archive_comment.c
84 zip_get_archive_flag.c
85 zip_get_compression_implementation.c
86 zip_get_encryption_implementation.c
87 zip_get_file_comment.c
97 zip_set_archive_comment.c
98 zip_set_archive_flag.c
99 zip_set_default_password.c
100 zip_set_file_comment.c
111 zip_source_function.c
125 zip_unchange_archive.c
129 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}
130 ${CMAKE_CURRENT_BINARY_DIR}/..)
132 # XXX: distribute instead?
133 #ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/zip_err_str.c
134 # COMMAND sh ${CMAKE_CURRENT_SOURCE_DIR}/make_zip_err_str.sh
135 # ${CMAKE_CURRENT_SOURCE_DIR}/zip.h
136 # ${CMAKE_CURRENT_BINARY_DIR}/zip_err_str.c
137 # DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/zip.h
138 # ${CMAKE_CURRENT_SOURCE_DIR}/make_zip_err_str.sh
140 CHECK_FUNCTION_EXISTS(mkstemp HAVE_MKSTEMP)
142 SET(LIBZIP_EXTRA_FILES mkstemp.c)
143 ENDIF(NOT HAVE_MKSTEMP)
145 ADD_LIBRARY(zip SHARED ${LIBZIP_SOURCES} ${LIBZIP_EXTRA_FILES})
146 SET_TARGET_PROPERTIES(zip PROPERTIES VERSION 3.0 SOVERSION 3 )
147 TARGET_LINK_LIBRARIES(zip ${ZLIB_LIBRARY})
149 ARCHIVE DESTINATION lib
150 LIBRARY DESTINATION lib)
151 #CREATE_LIBTOOL_FILE(zip lib)