Fix FMOD Ex packaging
This commit is contained in:
@@ -53,6 +53,11 @@ find_path(FMODEX_INCLUDE_DIR fmod.h
|
|||||||
${FMODEX_SDK_DIR}
|
${FMODEX_SDK_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if(DARWIN)
|
||||||
|
set(FMODEX_ORIG_LIBRARY "${FMODEX_LIBRARY}")
|
||||||
|
set(FMODEX_LIBRARY "${CMAKE_CURRENT_BINARY_DIR}/libfmodex.dylib")
|
||||||
|
endif(DARWIN)
|
||||||
|
|
||||||
if (FMODEX_LIBRARY AND FMODEX_INCLUDE_DIR)
|
if (FMODEX_LIBRARY AND FMODEX_INCLUDE_DIR)
|
||||||
set(FMODEX ON CACHE BOOL "Use closed source FMOD Ex sound library.")
|
set(FMODEX ON CACHE BOOL "Use closed source FMOD Ex sound library.")
|
||||||
else (FMODEX_LIBRARY AND FMODEX_INCLUDE_DIR)
|
else (FMODEX_LIBRARY AND FMODEX_INCLUDE_DIR)
|
||||||
|
|||||||
@@ -1371,12 +1371,9 @@ if (FMOD OR FMODEX)
|
|||||||
endif (FMOD)
|
endif (FMOD)
|
||||||
|
|
||||||
if (DARWIN)
|
if (DARWIN)
|
||||||
#if(FMOD) # FIXME: This makes no sense, we can't nest an if(FMODEX) and it's senseless to check for FMOD again.
|
if(FMOD)
|
||||||
set(fmodwrapper_SOURCE_FILES fmodwrapper.cpp)
|
set(fmodwrapper_SOURCE_FILES fmodwrapper.cpp)
|
||||||
add_library(fmodwrapper SHARED ${fmodwrapper_SOURCE_FILES})
|
add_library(fmodwrapper SHARED ${fmodwrapper_SOURCE_FILES})
|
||||||
if (FMODEX)
|
|
||||||
set(fmodwrapper_needed_LIBRARIES ${FMODEX_LIBRARY} ${CARBON_LIBRARY})
|
|
||||||
endif (FMODEX)
|
|
||||||
if (FMOD)
|
if (FMOD)
|
||||||
set(fmodwrapper_needed_LIBRARIES ${FMOD_LIBRARY} ${CARBON_LIBRARY})
|
set(fmodwrapper_needed_LIBRARIES ${FMOD_LIBRARY} ${CARBON_LIBRARY})
|
||||||
endif (FMOD)
|
endif (FMOD)
|
||||||
@@ -1389,7 +1386,7 @@ if (FMOD OR FMODEX)
|
|||||||
)
|
)
|
||||||
set(FMODWRAPPER_LIBRARY fmodwrapper)
|
set(FMODWRAPPER_LIBRARY fmodwrapper)
|
||||||
target_link_libraries(fmodwrapper ${fmodwrapper_needed_LIBRARIES})
|
target_link_libraries(fmodwrapper ${fmodwrapper_needed_LIBRARIES})
|
||||||
#endif(FMOD) # FIXME!
|
endif(FMOD)
|
||||||
if(FMODEX)
|
if(FMODEX)
|
||||||
set(FMODWRAPPER_LIBRARY ${FMODEX_LIBRARY})
|
set(FMODWRAPPER_LIBRARY ${FMODEX_LIBRARY})
|
||||||
endif(FMODEX)
|
endif(FMODEX)
|
||||||
@@ -1441,21 +1438,21 @@ if (WINDOWS)
|
|||||||
set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map")
|
set(release_flags "/MAP:Release/${VIEWER_BINARY_NAME}.map")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (FMOD)
|
if (FMOD)
|
||||||
if(MANIFEST_LIBRARIES)
|
if(MANIFEST_LIBRARIES)
|
||||||
set(MANIFEST_LIBRARIES "${MANIFEST_LIBRARIES}|${FMOD_BINARY_DIR}/fmod.dll")
|
set(MANIFEST_LIBRARIES "${MANIFEST_LIBRARIES}|${FMOD_BINARY_DIR}/fmod.dll")
|
||||||
else(MANIFEST_LIBRARIES)
|
else(MANIFEST_LIBRARIES)
|
||||||
set(MANIFEST_LIBRARIES "--extra_libraries=${FMOD_BINARY_DIR}/fmod.dll")
|
set(MANIFEST_LIBRARIES "--extra_libraries=${FMOD_BINARY_DIR}/fmod.dll")
|
||||||
endif(MANIFEST_LIBRARIES)
|
endif(MANIFEST_LIBRARIES)
|
||||||
endif (FMOD)
|
endif (FMOD)
|
||||||
if (FMODEX)
|
if (FMODEX)
|
||||||
if(MANIFEST_LIBRARIES)
|
if(MANIFEST_LIBRARIES)
|
||||||
set(MANIFEST_LIBRARIES "${MANIFEST_LIBRARIES}|${FMODEX_BINARY_DIR}/fmodex.dll")
|
set(MANIFEST_LIBRARIES "${MANIFEST_LIBRARIES}|${FMODEX_BINARY_DIR}/fmodex.dll")
|
||||||
else(MANIFEST_LIBRARIES)
|
else(MANIFEST_LIBRARIES)
|
||||||
set(MANIFEST_LIBRARIES "--extra_libraries=${FMODEX_BINARY_DIR}/fmodex.dll")
|
set(MANIFEST_LIBRARIES "--extra_libraries=${FMODEX_BINARY_DIR}/fmodex.dll")
|
||||||
endif(MANIFEST_LIBRARIES)
|
endif(MANIFEST_LIBRARIES)
|
||||||
set(EXTRA_LINKER_FLAGS "/DELAYLOAD:fmodex.dll")
|
set(EXTRA_LINKER_FLAGS "/DELAYLOAD:fmodex.dll")
|
||||||
endif (FMODEX)
|
endif (FMODEX)
|
||||||
|
|
||||||
set_target_properties(${VIEWER_BINARY_NAME}
|
set_target_properties(${VIEWER_BINARY_NAME}
|
||||||
PROPERTIES
|
PROPERTIES
|
||||||
@@ -1668,6 +1665,15 @@ if (DARWIN)
|
|||||||
|
|
||||||
add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit basic_plugin_filepicker)
|
add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_quicktime media_plugin_webkit basic_plugin_filepicker)
|
||||||
|
|
||||||
|
if (FMODEX)
|
||||||
|
add_custom_command(OUTPUT "${FMODEX_LIBRARY}"
|
||||||
|
COMMAND cp "${FMODEX_ORIG_LIBRARY}" "${FMODEX_LIBRARY}"
|
||||||
|
COMMAND install_name_tool -id "@executable_path/../Resources/libfmodex.dylib" ${FMODEX_LIBRARY}
|
||||||
|
DEPENDS "${FMODEX_ORIG_LIBRARY}")
|
||||||
|
add_custom_target(fmodex_modified_library DEPENDS "${FMODEX_LIBRARY}")
|
||||||
|
add_dependencies(${VIEWER_BINARY_NAME} fmodex_modified_library)
|
||||||
|
endif (FMODEX)
|
||||||
|
|
||||||
if (PACKAGE)
|
if (PACKAGE)
|
||||||
add_custom_target(package ALL DEPENDS ${VIEWER_BINARY_NAME})
|
add_custom_target(package ALL DEPENDS ${VIEWER_BINARY_NAME})
|
||||||
add_dependencies(package mac-updater mac-crash-logger)
|
add_dependencies(package mac-updater mac-crash-logger)
|
||||||
|
|||||||
@@ -525,6 +525,14 @@ class DarwinManifest(ViewerManifest):
|
|||||||
print "Skipping libfmodwrapper.dylib - not found"
|
print "Skipping libfmodwrapper.dylib - not found"
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
# And now FMOD Ex!
|
||||||
|
try:
|
||||||
|
self.path("libfmodex.dylib", "libfmodex.dylib")
|
||||||
|
pass
|
||||||
|
except:
|
||||||
|
print "Skipping libfmodex.dylib - not found"
|
||||||
|
pass
|
||||||
|
|
||||||
# our apps
|
# our apps
|
||||||
try:
|
try:
|
||||||
self.path("../mac_crash_logger/" + self.args['configuration'] + "/mac-crash-logger.app", "mac-crash-logger.app")
|
self.path("../mac_crash_logger/" + self.args['configuration'] + "/mac-crash-logger.app", "mac-crash-logger.app")
|
||||||
|
|||||||
Reference in New Issue
Block a user