Skip to content

Commit 10f9f55

Browse files
committed
Bundle any externally linked libs for osgEarth on Mac
1 parent 09e0db6 commit 10f9f55

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

mac/cmake/1osg.cmake.in

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ IF (OSG_PLUGINS_PATH)
4747
ENDFOREACH (OP)
4848
ENDIF ()
4949

50+
5051
# update lib paths
5152

5253
MESSAGE (STATUS "Updating OSG library paths...")
@@ -78,9 +79,29 @@ FOREACH (OFW ${OSGLIST})
7879
# globe plugin
7980
INSTALLNAMETOOL_CHANGE ("${OFW_CHG}" "${OFW_CHG_TO}" "${QPLUGDIR}/libglobeplugin.so")
8081
ENDFOREACH (OFW)
82+
8183
IF (@HAVE_OSGEARTHQT@)
82-
8384
SET (OSGLIST ${OSGLIST} osgQt osgEarthQt)
8485
ENDIF (@HAVE_OSGEARTHQT@)
8586

87+
# osgEarth exernal libs (2.4+, e.g. tinyxml)
88+
GET_INSTALL_NAME ("${QFWDIR}/osgEarth.framework/osgEarth" "libtinyxml" TINY)
89+
# MESSAGE (STATUS "libtinyxml path: ${TINY}")
90+
IF (EXISTS "${TINY}")
91+
SET (TINY_CHG "${TINY}")
92+
SET (TINY_CHG_TO "${ATEXECUTABLE}/@QGIS_LIB_SUBDIR@/libtinyxml.dylib")
93+
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "${TINY_CHG}" "${QLIBDIR}/libtinyxml.dylib")
94+
95+
# osg frameworks
96+
FOREACH (OF ${OSGLIST})
97+
INSTALLNAMETOOL_CHANGE ("${TINY_CHG}" "${TINY_CHG_TO}" "${QFWDIR}/${OF}.framework/${OF}")
98+
ENDFOREACH (OF)
99+
# osg plugins
100+
FOREACH (OP ${OSGPLUGLIST})
101+
INSTALLNAMETOOL_CHANGE ("${TINY_CHG}" "${TINY_CHG_TO}" "${QPLUGDIR}/../osgPlugins/${OP}")
102+
ENDFOREACH (OP)
103+
# globe plugin
104+
INSTALLNAMETOOL_CHANGE ("${TINY_CHG}" "${TINY_CHG_TO}" "${QPLUGDIR}/libglobeplugin.so")
105+
ENDIF ()
106+
86107
ENDIF (@OSGEARTH_FOUND@)

0 commit comments

Comments
 (0)