Files
CMake/Tests/BundleTest/BundleSubDir/CMakeLists.txt
Brad King 8b22d9b3c3 Tests: Remove explicit no-signing marks from BundleTest
These were added by commit e29a92f525 (Xcode: Make BundleTests
compatible with Xcode 11, 2019-09-01, v3.16.0-rc1~158^2).  The
real problem is that the `.app` is constructed with text files
under the `.app/Contents/MacOS/` folder.  Move those, and drop
the special no-signing configuration.
2021-02-22 13:58:24 -05:00

44 lines
1.6 KiB
CMake

project(BundleSubDir)
add_custom_command(
OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/randomResourceFile.plist"
COMMAND /bin/cp
ARGS "${BundleTest_SOURCE_DIR}/randomResourceFile.plist.in"
"${CMAKE_CURRENT_BINARY_DIR}/randomResourceFile.plist")
set_source_files_properties(
"${CMAKE_CURRENT_BINARY_DIR}/randomResourceFile.plist"
PROPERTIES
MACOSX_PACKAGE_LOCATION Resources
)
set_source_files_properties(
"${BundleTest_SOURCE_DIR}/SomeRandomFile.txt"
"${BundleTest_SOURCE_DIR}/../../README.rst"
PROPERTIES
MACOSX_PACKAGE_LOCATION Other
)
add_executable(SecondBundle
MACOSX_BUNDLE
"${BundleTest_SOURCE_DIR}/BundleTest.cxx"
"${BundleTest_SOURCE_DIR}/SomeRandomFile.txt"
"${BundleTest_SOURCE_DIR}/../../README.rst"
"${CMAKE_CURRENT_BINARY_DIR}/randomResourceFile.plist"
)
target_link_libraries(SecondBundle BundleTestLib)
# Test bundle installation.
install(TARGETS SecondBundle DESTINATION Applications)
# Test whether bundles respect the output name. Since the library is
# installed into a location that uses this output name this will fail if the
# bundle does not respect the name. Also the executable will not be found by
# the test driver if this does not work.
set_target_properties(SecondBundle PROPERTIES OUTPUT_NAME SecondBundleExe)
# Express one app bundle in terms of another's SOURCES to verify that
# the generators do not expose the Info.plist of one to the other.
add_executable(SubdirBundle1 MACOSX_BUNDLE EXCLUDE_FROM_ALL ../BundleTest.cxx)
add_executable(SubdirBundle2 MACOSX_BUNDLE EXCLUDE_FROM_ALL $<TARGET_PROPERTY:SubdirBundle1,SOURCES>)