35
35
endif ()
36
36
set_target_properties (avtranscoder-shared PROPERTIES SOVERSION ${AVTRANSCODER_VERSION_MAJOR} )
37
37
set_target_properties (avtranscoder-shared PROPERTIES VERSION ${AVTRANSCODER_VERSION} )
38
+ set_target_properties (avtranscoder-shared PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1 )
38
39
target_link_libraries (avtranscoder-shared ${FFMPEG_LIBRARIES} )
39
40
target_include_directories (avtranscoder-shared PUBLIC
40
41
${AVTRANSCODER_SRC_PATH} ${FFMPEG_INCLUDE_DIR} )
@@ -48,11 +49,8 @@ install(
48
49
PATTERN "*.hpp"
49
50
PATTERN "*.i"
50
51
)
51
- set (LIBRARY_OUTPUT_PATH "${PROJECT_BINARY_DIR} /lib" )
52
- install (
53
- DIRECTORY "${LIBRARY_OUTPUT_PATH} "
54
- DESTINATION "${CMAKE_INSTALL_PREFIX} "
55
- )
52
+ install (TARGETS avtranscoder-static DESTINATION lib/ )
53
+ install (TARGETS avtranscoder-shared DESTINATION lib/ )
56
54
57
55
### Install AvTranscoder ressource
58
56
install (
@@ -97,6 +95,13 @@ if(SWIG_FOUND)
97
95
set_target_properties (${SWIG_MODULE_avtranscoder-py_REAL_NAME} PROPERTIES SOVERSION ${AVTRANSCODER_VERSION_MAJOR} )
98
96
set_target_properties (${SWIG_MODULE_avtranscoder-py_REAL_NAME} PROPERTIES VERSION ${AVTRANSCODER_VERSION} )
99
97
endif ()
98
+ # Force the library to look in the project lib folder relatively
99
+ set_target_properties (${SWIG_MODULE_avtranscoder-py_REAL_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1 )
100
+ if (APPLE )
101
+ set_target_properties (${SWIG_MODULE_avtranscoder-py_REAL_NAME} PROPERTIES INSTALL_RPATH "@loader_path/../../.." )
102
+ else ()
103
+ set_target_properties (${SWIG_MODULE_avtranscoder-py_REAL_NAME} PROPERTIES INSTALL_RPATH "$ORIGIN/../../..:$ORIGIN" )
104
+ endif ()
100
105
swig_link_libraries (avtranscoder-py avtranscoder-shared ${PYTHON_LIBRARIES} )
101
106
102
107
# Install python interface
@@ -106,7 +111,8 @@ if(SWIG_FOUND)
106
111
FILES ${AVTRANSCODER_PYTHON_BINDING_FILE} ${AVTRANSCODER_PYTHON_INIT_FILE}
107
112
DESTINATION ${AVTRANSCODER_PYTHON_MODULE_OUTPUT_DIR}
108
113
)
109
- # Install __init__.py
114
+ # Install python lib and __init__.py files
115
+ install (TARGETS ${SWIG_MODULE_avtranscoder-py_REAL_NAME} DESTINATION "lib/python${PYTHONLIBS_VERSION_STRING} /site-packages/pyAvTranscoder/" )
110
116
install (CODE "file(WRITE ${CMAKE_INSTALL_PREFIX} /${AVTRANSCODER_PYTHON_MODULE_OUTPUT_DIR} /__init__.py)" )
111
117
else ()
112
118
message ("PYTHON not found, will not build python binding." )
@@ -136,6 +142,13 @@ if(SWIG_FOUND)
136
142
set_target_properties (${SWIG_MODULE_avtranscoder-java_REAL_NAME} PROPERTIES SOVERSION ${AVTRANSCODER_VERSION_MAJOR} )
137
143
set_target_properties (${SWIG_MODULE_avtranscoder-java_REAL_NAME} PROPERTIES VERSION ${AVTRANSCODER_VERSION} )
138
144
endif ()
145
+ # Force the library to look in the project lib folder relatively
146
+ set_target_properties (${SWIG_MODULE_avtranscoder-java_REAL_NAME} PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1 )
147
+ if (APPLE )
148
+ set_target_properties (${SWIG_MODULE_avtranscoder-java_REAL_NAME} PROPERTIES INSTALL_RPATH "@loader_path/.." )
149
+ else ()
150
+ set_target_properties (${SWIG_MODULE_avtranscoder-java_REAL_NAME} PROPERTIES INSTALL_RPATH "$ORIGIN/..:$ORIGIN" )
151
+ endif ()
139
152
swig_link_libraries (avtranscoder-java avtranscoder-shared )
140
153
141
154
# Post build of java binding : compile java files (generate class files) and create jar
@@ -152,7 +165,8 @@ if(SWIG_FOUND)
152
165
COMMAND ${Java_JAR_EXECUTABLE} cf ${AVTRANSCODER_JAR_NAME} "-C" ${AVTRANSCODER_JAVA_CLASS_OUTPUT_PATH} "."
153
166
)
154
167
155
- # Install jar file
168
+ # Install java lib and jar files
169
+ install (TARGETS ${SWIG_MODULE_avtranscoder-java_REAL_NAME} DESTINATION "lib/java" )
156
170
install (FILES ${AVTRANSCODER_JAR_PATH} /${AVTRANSCODER_JAR_NAME} DESTINATION "share/java/" )
157
171
else ()
158
172
message ("JAVA not found, will not build java binding." )
0 commit comments