Commit Graph

12233 Commits

Author SHA1 Message Date
Alex Neundorf e474dcb231 automoc: improved warning message in relaxed mode
Alex
2011-12-14 19:12:15 +01:00
Alex Neundorf 96fc5d5d07 automoc: default to strict mode, use CMAKE_AUTOMOC_RELAXED_MODE
automoc now defaults to strict mode, also with Qt4, i.e. it behaves as
the documentation says by default. I also inverted the switch
CMAKE_AUTOMOC_STRICT_MODE to CMAKE_AUTOMOC_RELAXED_MODE.
Docs and test adapted accordingly.

Alex
2011-12-13 22:11:47 +01:00
KWSys Robot 3c101429a4 KWSys Nightly Date Stamp 2011-12-13 00:05:03 -05:00
KWSys Robot 99771d55be KWSys Nightly Date Stamp 2011-12-12 00:05:04 -05:00
KWSys Robot 53455f938b KWSys Nightly Date Stamp 2011-12-11 00:05:05 -05:00
KWSys Robot 85344d767b KWSys Nightly Date Stamp 2011-12-10 00:05:04 -05:00
KWSys Robot 33c24b2100 KWSys Nightly Date Stamp 2011-12-09 00:05:08 -05:00
KWSys Robot e61d2ded80 KWSys Nightly Date Stamp 2011-12-08 00:05:03 -05:00
David Cole d050d6b58b Merge topic 'AutomocIncludedDotMocFileHandling'
2d11951 Merge branch 'master' into AutomocIncludedDotMocFileHandling
1eca18f automoc: add documentation for CMAKE_AUTOMOC_STRICT_MODE
bc278ce automoc: fix line length
62e223e automoc: add variable CMAKE_AUTOMOC_STRICT_MODE, to enable strict parsing
40c5167 automoc: accept even more .moc files in non-strict mode
c207f5d automoc: also accept other files when .moc is included in non-strict mode
9c0df72 automoc: add a StrictParseCppFile(), which is only qmake-compatible
174bf35 automoc: move the code for finding headers into separate function
8507eae automoc: fix handling of included _p.moc files
7ada172 automoc: some more linebreaks for the warnings for better readability
3b93e26 automoc: add extra check whether the header contains Q_PRIVATE_SLOT
4745715 Add a test case for the use of Q_PRIVATE_SLOT.
bde4edb automoc: add special handling for including basename_p.moc, with test
74ab0f6 automoc: move some code from the big parsing loop into separate functions
bc7560e automoc: add test for including a moc_abc_p.cpp file
30fd8e6 automoc: add test for including the moc file from another header
...
2011-12-07 16:47:35 -05:00
David Cole 174ecf51f8 Merge topic 'refactor-versioned-lib-names'
96f65ba cmTarget: Create helper method for versioned library names
2011-12-07 16:46:35 -05:00
David Cole 2d1195123e Merge branch 'master' into AutomocIncludedDotMocFileHandling
Conflicts:
	Source/cmTarget.cxx
2011-12-07 16:29:13 -05:00
KWSys Robot 6fb2a38b0a KWSys Nightly Date Stamp 2011-12-07 00:05:03 -05:00
David Cole 386cf3c593 Merge topic 'GNU-to-MS'
ae62a1c Test CMAKE_GNUtoMS option in ExportImport on MinGW and MSys
afb00fe Add CMAKE_GNUtoMS option to convert GNU .dll.a to MS .lib
61e8629 Factor makefile generator link rule lookup into helper function
a603250 Load platform files that need to know the ABI when possible
ecd8414 Fortran: Detect pointer size in gfortran on MinGW
2011-12-06 15:07:39 -05:00
David Cole 01e825332c Merge topic 'export-final-location'
fea3e84 export(): Document undefined behavior of location properties
363d396 Factor out target location undefined behavior helper macro
2011-12-06 15:05:28 -05:00
Alex Neundorf 1eca18fd52 automoc: add documentation for CMAKE_AUTOMOC_STRICT_MODE
Alex
2011-12-06 20:42:20 +01:00
Brad King 96f65ba68e cmTarget: Create helper method for versioned library names
Replace the duplicate logic for the realName and soName of versioned
shared libraries with calls to a new ComputeVersionedName method.
2011-12-06 14:19:44 -05:00
Alex Neundorf bc278ceb0f automoc: fix line length
Alex
2011-12-06 18:54:30 +01:00
KWSys Robot 759323ad0b KWSys Nightly Date Stamp 2011-12-06 00:05:06 -05:00
Brad King afb00fef19 Add CMAKE_GNUtoMS option to convert GNU .dll.a to MS .lib
Teach the Windows-GNU.cmake platform file to look for Visual Studio
tools matching the target ABI.  Add an extra step to the link command
for shared libraries and executables that export symbols and on which a
new GNUtoMS property is set (initialized by the CMAKE_GNUtoMS option).
Tell the GNU linker to output a module definition (.def) file listing
exported symbols in addition to the GNU-format import library (.dll.a).
Pass the .def file to the MS "lib" tool to construct a MS-format DLL
import library (.lib).

Teach the install(TARGETS) command to install the MS import library next
to the GNU one.  Teach the install(EXPORT) and export() command to set
the IMPORTED_IMPLIB property pointing at the import library to use the
import library matching the tools in the importing project.
2011-12-05 18:13:49 -05:00
Brad King 61e862986a Factor makefile generator link rule lookup into helper function
This provides a place in the makefile generators to adjust the link
rules for both libraries and executables.
2011-12-05 16:37:43 -05:00
Brad King a603250a13 Load platform files that need to know the ABI when possible
Load platform files named in CMAKE_<lang>_ABI_FILES for each language
once the ABI sizeof(void*) is known.  During the first configuration
this is after the test for working compiler and ABI detection checks.
During later configurations the ABI information is immediately available
because it has been saved in CMake<lang>Compiler.cmake.
2011-12-05 16:35:42 -05:00
KWSys Robot e0bc42aa4f KWSys Nightly Date Stamp 2011-12-05 00:05:05 -05:00
KWSys Robot e21e5cf289 KWSys Nightly Date Stamp 2011-12-04 00:05:11 -05:00
KWSys Robot 901e6d023f KWSys Nightly Date Stamp 2011-12-03 00:05:06 -05:00
Alex Neundorf 62e223e8fa automoc: add variable CMAKE_AUTOMOC_STRICT_MODE, to enable strict parsing
Alex
2011-12-02 22:08:06 +01:00
Alex Neundorf 40c516783e automoc: accept even more .moc files in non-strict mode
Alex
2011-12-02 21:54:11 +01:00
Alex Neundorf c207f5d361 automoc: also accept other files when .moc is included in non-strict mode
Alex
2011-12-02 21:43:15 +01:00
Alex Neundorf 9c0df72dc4 automoc: add a StrictParseCppFile(), which is only qmake-compatible
ParseCppFile() is the one which is automoc4/KDE4-compatible, and which
becomes a bit crowded. By separating these two it is easier to ensure
that the strict one doesn't get broken accidentially.

Alex
2011-12-02 20:59:44 +01:00
Alex Neundorf 174bf35fbb automoc: move the code for finding headers into separate function
Alex
2011-12-02 20:38:14 +01:00
KWSys Robot 8bda047b8e KWSys Nightly Date Stamp 2011-12-02 00:05:04 -05:00
Brad King fea3e84ee3 export(): Document undefined behavior of location properties
Since the export() command needs to know the final location of a target
in the build tree we cannot allow properties affecting the location or
name of a target file to be set after the target is passed to export().

Fix a violation of this rule in the SimpleInstall test.
2011-12-01 16:00:12 -05:00
Brad King 363d3962c4 Factor out target location undefined behavior helper macro
Move CM_LOCATION_UNDEFINED_BEHAVIOR into a dedicated header.  Add a
parameter to describe the action that leads to the undefined target
location.
2011-12-01 15:58:47 -05:00
David Cole 97142c7603 Merge topic 'newline-style'
ac2e45d Provide std::ios_base typedef on GCC < 3
28c46ca cmNewLineStyle: Use cmStandardIncludes.h
75e83e9 cmNewLineStyle: Remove trailing comma in enum
be6502c bootstrap: Include cmNewLineStyle in build
a087490 Add NEWLINE_STYLE option to configure_file (#3957)
2011-12-01 14:03:24 -05:00
David Cole f1ad054317 Merge topic 'remove-cmLocalGenerator-trailing-whitespace'
6b104e1 Remove trailing whitespace from cmLocalGenerator
2011-12-01 14:02:39 -05:00
David Cole f64d85e711 Merge topic 'vs-managed-projects'
a1f976c VS: Add support for three new project properties (#12586)
2011-12-01 14:02:32 -05:00
David Cole 9c288d6c2b Merge topic 'automoc_qt5'
a828623 moc is now part of the Qt5Core module
b8c8cab Merge remote-tracking branch 'origin/master' into automoc_qt5
2011-12-01 14:02:21 -05:00
David Cole 3f4672b1d7 Merge topic 'cmake-gui_AddCompletionForAddCacheEntry'
b0d01c3 cmake-gui: add completion for the names when adding cache entries
08c59af Remove trailing whitespace
2011-12-01 14:02:05 -05:00
KWSys Robot 0393aa61d1 KWSys Nightly Date Stamp 2011-12-01 00:05:04 -05:00
Alex Neundorf 8507eaed16 automoc: fix handling of included _p.moc files
Alex
2011-11-30 21:43:05 +01:00
Brad King ac2e45d089 Provide std::ios_base typedef on GCC < 3
The ancient GNU standard library provided std::ios but not
std::ios_base.  Define the latter in terms of the former.
2011-11-30 09:27:18 -05:00
Brad King 28c46ca6cd cmNewLineStyle: Use cmStandardIncludes.h
This ensures that stl types are compiled consistently with
the reset of CMake.  Otherwise one may get errors like

  Undefined symbol: .cmNewLineStyle::ReadFromArguments(
    const std::vector<std::_LFS_ON::basic_string ...)

due to inconsistent large file support definitions.
2011-11-30 09:19:32 -05:00
KWSys Robot 17388037fd KWSys Nightly Date Stamp 2011-11-30 00:05:04 -05:00
Alex Neundorf 7ada172002 automoc: some more linebreaks for the warnings for better readability
Alex
2011-11-29 21:07:50 +01:00
Alex Neundorf 3b93e266c0 automoc: add extra check whether the header contains Q_PRIVATE_SLOT
This is again for KDE4 compatiblity. If foo.moc is included, in general
moc should run on foo.cpp. Usually this can't cause problems.
It can only cause problems if moc must run on the header, and the resulting
file must be included in the cpp file, which is the case with the
Q_PRIVATE_SLOT macro.
This makes the test added by Stephen pass.

Alex
2011-11-29 20:55:36 +01:00
Brad King 6b104e107e Remove trailing whitespace from cmLocalGenerator 2011-11-29 08:58:45 -05:00
Brad King 75e83e98fa cmNewLineStyle: Remove trailing comma in enum 2011-11-29 08:01:07 -05:00
KWSys Robot 89f6fbaae3 KWSys Nightly Date Stamp 2011-11-29 00:05:04 -05:00
Peter Kuemmel a087490697 Add NEWLINE_STYLE option to configure_file (#3957) 2011-11-28 13:48:59 -05:00
Aaron Ten Clay a1f976ce0e VS: Add support for three new project properties (#12586)
VS_GLOBAL_PROJECT_TYPES: A string containing UUIDs to embed in the
Visual Studio project file under <ProjectTypes>.

VS_GLOBAL_KEYWORD: Allows specification of a keyword like "ManagedCProj"
instead of the default "Win32Proj", under <Keyword>

VS_DOTNET_REFERENCES: Semicolon-delimited list of .NET references to add
to the project, which creates a new <ItemGroup>.
2011-11-28 11:44:04 -05:00
KWSys Robot 912c02c682 KWSys Nightly Date Stamp 2011-11-28 00:05:05 -05:00