summaryrefslogtreecommitdiffstats
path: root/Tests/ObjectLibrary
Commit message (Collapse)AuthorAgeFilesLines
* Make ExportLanguages a subtest of the ObjectLibrary testStephen Kelly2013-10-245-0/+33
| | | | | | It was a subtest of the RunCMake.ObjectLibrary test. However, we need to test a build with ExternalProject after running CMake, which RunCMake tests do not do.
* Make sure INTERFACE properties work with OBJECT libraries.Stephen Kelly2013-02-084-6/+23
|
* Whitelist target types in target_{include_directories,compile_definitions}Stephen Kelly2013-02-081-1/+1
| | | | | Setting include directories or compile definitions on a target created with add_custom_target does not make sense.
* Tests/ObjectLibrary: Do not enable CXX in subdirectoriesBrad King2012-08-202-2/+2
| | | | | | | | In commit b237dbd8 (Xcode: Fix object library references in multi-project trees, 2012-08-03) we accidentally enabled CXX in the subdiretories of this test by invoking project() with only one argument. The top-level directory of the test enables only C, so do this in the subdirectories too.
* Xcode: Fix object library references in multi-project trees (#13452)Brad King2012-08-032-0/+2
| | | | | | | | | | | | | | | | | In cmGlobalXCodeGenerator::Generate we generate a .xcodeproj for each directory in the tree containing a project() command. First we iteratively use SetGenerationRoot to add "ALL_BUILD" and other targets to each project. This leaves "CurrentProject" set to the last project when we invoke cmGlobalGenerator::Generate, which is not the same as the top-level project if any subdirectories invoke the project() command. When cmGlobalGenerator::Generate reaches CreateGeneratorTargets it constructs cmGeneratorTarget and calls ComputeTargetObjects exactly once per target. In this context the value of CurrentProject is undefined so we cannot pass it to GetObjectsNormalDirectory. Use "$(PROJECT_NAME)" instead so it will adapt automatically to each project. Also teach Tests/ObjectLibrary to cover this case.
* Fix ObjectLibrary test on WatcomBrad King2012-03-204-12/+12
| | | | | | | | | | | | | | The Watcom compiler interprets "-DB" as option -db generate browsing information so define "A_DEF" and "B_DEF" instead of just "A" and "B". Skip CMAKE_SHARED_LIBRARY_C_FLAGS for Watcom because it is set to -bd build Dynamic link library which adds a DLL entry point to each object.
* Test OBJECT library use without other sourcesBrad King2012-03-165-0/+64
| | | | | | | | | | | | Reference OBJECT libraries for inclusion in targets that have no other sources to verify that the linker language propagates correctly from the object libraries. Test with a STATIC library, a SHARED library, and an EXECUTABLE target. Use the static and shared libraries each in executables that end up using the object library symbols. In VS 6, 7, and 7.1 add a dummy object file to convince the IDE to build the targets without sources. In Xcode add a dummy source file to convince it to build targets without sources.
* Test OBJECT library success casesBrad King2012-03-1613-0/+110
Add "ObjectLibrary" test to build and use OBJECT libraries. Build multiple object libraries in separate directories with different flags. Use a custom command to generate a source file in one OBJECT library. Reference the OBJECT libraries for inclusion in a STATIC library, a SHARED library, and an EXECUTABLE target. Use the static and shared libraries each in executables that end up using the object library symbols. Verify that object library symbols are exported from the shared library.