Commit Graph

284 Commits

Author SHA1 Message Date
Johan Bjork 5a94d099dd Xcode: Avoid spewing the environment on every script run (#12522)
This is the prefered way to get rid of the 'setenv XXX' output,
instead of stripping it in the cmakexbuild wrapper.
2011-10-20 19:14:28 -04:00
David Cole fde0a4ddd1 Merge topic 'fix-12377-xcode-honor-g0'
cb22afc Xcode: Honor -g0 to disable debugging (#12377)
2011-09-07 15:39:15 -04:00
David Cole db4154661c Merge topic 'fix-12370-no-space-in-target-name'
e05e0f1 Xcode: No spaces in makefile target names (#12370)
2011-09-07 15:38:16 -04:00
David Cole d9ad72542a Merge topic 'fortran-format'
90efed6 Xcode: Honor Fortran_FORMAT target and source file property
5c0c635 Fortran: Add support for free- and fixed-form flags
47a0c75 VS: Map Fortran free- and fixed-format flags to IDE options
d6e2a06 VS: Map per-source Fortran flags to IDE options
2011-09-07 15:37:27 -04:00
David Cole 103ab60dd7 Merge topic 'fix-zero-check-mistake'
57bc42a Xcode: Do not emit the ZERO_CHECK target more than once
2011-09-07 15:37:15 -04:00
Johan Bjork cb22afc02c Xcode: Honor -g0 to disable debugging (#12377)
This commit changes ExtractFlag to remove all occurences
of a flag, and only save the last one. (i.e., the dominant
one according to GCC rules)
2011-09-06 15:04:58 -04:00
Johan Björk e05e0f1d2c Xcode: No spaces in makefile target names (#12370)
Don't use spaces for target names in the makefiles.
2011-09-05 12:20:19 -04:00
David Cole 925af96eda Merge topic 'fix-xcode4-test-failures'
0cf4fa5 Xcode4: Requires more quoting of single quote char
2011-09-01 15:12:31 -04:00
Brad King 90efed6ee6 Xcode: Honor Fortran_FORMAT target and source file property
Convert the target property to the IFORT_LANG_SRCFMT build setting.
Convert the source property to the per-source COMPILER_FLAGS setting.
2011-09-01 10:54:12 -04:00
Johan Bjork 57bc42ae91 Xcode: Do not emit the ZERO_CHECK target more than once 2011-09-01 09:59:44 -04:00
David Cole 0cf4fa578a Xcode4: Requires more quoting of single quote char
Specifically in per-target and per-file compiler definition
string values.

The Preprocessor test now passes on Xcode 4 builds after
this commit.
2011-08-25 18:39:21 -04:00
David Cole 9d8b025b5f Merge topic 'fix-11690-preserve-xcode-objectids'
1834f23 Xcode: Save object id values in CMakeCache.txt (#11690)
2011-08-25 15:41:13 -04:00
David Cole 1834f232a7 Xcode: Save object id values in CMakeCache.txt (#11690)
For project and target objects, save their ids in CMakeCache.txt.

Hopefully, that will be enough to allow user settings to be saved
across multiple CMake generate operations. Other object types may
also need their ids saved: if so, more code than this commit
will be necessary...
2011-08-24 18:11:32 -04:00
Johan Bjork bda4148a57 Xcode: Remove PREBINDING attribute for Xcode 4 and above
PREBINDING is obsolete in Xcode 4 and causes warnings if present.
Do not emit it for Xcode >= 4.0
2011-08-19 11:27:26 -04:00
Johan Björk 312d68d5b1 Xcode: Rearrange CMakeReRun to enable parallel builds
by isolating the CMakeReRun steps to a ZERO_CHECK target, as
in the Visual Studio generators. Also, honor the value of
CMAKE_SUPPRESS_REGENERATION.
2011-08-04 16:31:45 -04:00
David Cole 74c73d5fa0 Correct KWStyle line too long error 2011-07-19 11:33:01 -04:00
David Cole 0c030ef72c Add use of EFFECTIVE_PLATFORM_NAME to generated Xcode projects.
Facilitates building iOS projects, enabling switching back and forth
between simulator and device builds at development time.
2011-07-18 16:37:06 -04:00
Brad King 98dc13e513 Merge topic 'xcode-source_groups-folders-issue-10039'
f09ba0f Fix style errors added by parent and grandparent
eeeeca1 XCode: Support target folders on XCode.
59ed84e Xcode: Support multiple level nesting of XCode folders (#10039)
d0a403f CMake: Move tokenize to cmSystemTools
2011-06-08 15:44:44 -04:00
Brad King f09ba0f1a2 Fix style errors added by parent and grandparent 2011-06-08 07:54:33 -04:00
Johan Björk eeeeca1082 XCode: Support target folders on XCode. 2011-06-07 10:44:27 -04:00
Johan Björk 59ed84e032 Xcode: Support multiple level nesting of XCode folders (#10039) 2011-06-07 10:21:49 -04:00
Brad King 44cdae921d Xcode: Fix parallel build depends with universal binaries (#11844)
A post-build phase of each target invokes the XCODE_DEPEND_HELPER.make
file to erase any targets that link to it.  Narrow the set of targets
tested by each post-build phase to those that depend on the newly
completed target.  This avoids removing files from partially built
unrelated targets that happen to be building in parallel.
2011-06-06 17:44:11 -04:00
Sean McBride a27edd8a05 Fix XCode -> Xcode typos, notably in man page (#12231) 2011-05-31 09:13:00 -04:00
Brad King 554641f320 Merge topic 'fix-8914-allow-config-types-override'
e6221ed Xcode: Allow override of CMAKE_CONFIGURATION_TYPES (#8914)
2011-02-22 14:31:26 -05:00
Brad King 64d997a78c Merge topic 'fix-11295-support-plugin-bundles-on-mac'
cabc407 CFBundle Test: Add PATHS for finding Rez (#11295)
5457b82 Add support for CFBundle targets on the Mac (#11295)
2011-02-22 14:30:58 -05:00
David Cole e6221ed2c4 Xcode: Allow override of CMAKE_CONFIGURATION_TYPES (#8914) 2011-01-28 09:52:47 -05:00
David Cole b08657cf0f Xcode: Fix crash: avoid strlen call on NULL char *
Thanks to Johan Björk for the report on the CMake mailing list.
2011-01-27 06:57:12 -05:00
Brad King 20d11b9a33 Merge topic 'xcode-subdir-regen-dependencies'
809ef30 Xcode: Make generation depend on all input directories
2011-01-19 14:28:15 -05:00
Brad King 809ef3086d Xcode: Make generation depend on all input directories
Previously the Xcode generator would rerun CMake only if input file
dependencies in the top-level directory changed.  Teach it to depend on
input files from all directories.  Other generators already do this.

Reported-by: Johan Björk <phb@spotify.com>
2011-01-13 12:07:23 -05:00
David Cole 66d9cd8351 Xcode: Disable implicit make rules in custom rules makefiles.
With apologies to the suggester for not accenting the surname
vowel properly.

Suggested-By: Johan Bjork
2011-01-11 17:57:55 -05:00
Richard Bateman 5457b8254c Add support for CFBundle targets on the Mac (#11295)
This commit enables building, for example, plugin bundles
to be loaded by web browsers.
2011-01-11 12:54:44 -05:00
Brad King 533f5a2037 Merge topic 'custom-command-refactor'
53ea8b3 Merge branch 'imported-target-dependencies' into custom-command-refactor
1a29cca Remove cmLocalGenerator::GetRealLocation
542b517 Factor out common custom command generator
6fe5b3d Simplify VS generator ConstructScript interface
2010-12-21 14:03:02 -05:00
Brad King f7d525e3a6 Xcode: Generate native 3.2 projects
Set objectVersion = 46; compatibilityVersion = "Xcode 3.2" when
Xcode 3.2 is detected.
2010-12-17 08:41:32 -05:00
Brad King 542b517449 Factor out common custom command generator
The Makefile, VS, and Xcode generators previously duplicated some custom
command line generation code.  Factor this out into a separate class
cmCustomCommandGenerator shared by all generators.
2010-12-08 17:29:20 -05:00
Brad King e30a775f68 Improve signature of cmLocalGenerator::GetRealDependency
Allow file-level custom command dependencies to be skipped.
2010-12-08 17:14:14 -05:00
Brad King 8f0a70e5f0 Xcode: Recognize .hh as C++ (#11307) 2010-10-12 09:06:33 -04:00
Ben Boeckel 96a335fd8d XCode generation should fail if lang isn't known 2010-09-30 14:54:20 -04:00
Brad King a2bbe4bef9 Remove trailing whitespace from Xcode generator source
Reverting abandoned topic xcode_source_group_fix_7932 left this source
slightly different due to trailing whitespace removal on some lines.
Remove all trailing whitespace from the file to make it consistent.
2010-09-29 08:38:18 -04:00
Mikkel Krautz 0790af3bf5 Xcode: Avoid trailing space in ARCHS list (#11244)
With CMAKE_OSX_ARCHITECTURE settings such as $(ARCHS_STANDARD_32BIT),
the space inserted by the for loop would confuse Xcode if quoted. In
this particular example, what would be output would be:

  ARCHS = "$(ARCHS_STANDARD_32BIT) ";

The Xcode UI does not recognize this as the built-in "Standards 32-bit"
architecture setting unless the space is removed.
2010-09-20 10:05:33 -04:00
Brad King b06fb16684 No CMAKE_CONFIGURATION_TYPES in single-config generators (#10202)
Factor out reading of CMAKE_CONFIGURATION_TYPES and CMAKE_BUILD_TYPE
into cmMakefile::GetConfigurations.  Read the former only in
multi-config generators.
2010-09-08 14:54:49 -04:00
Brad King 5c49aa0c86 Xcode: Archives use STATIC_LIBRARY_FLAGS, not LINK_FLAGS
The LINK_FLAGS property is defined only for targets that really link.
These include executables and shared libraries.  For static libraries we
define the STATIC_LIBRARY_FLAGS property.  Teach the Xcode generator to
make this distinction.
2010-05-28 13:23:31 -04:00
David Cole a41345feca Preemptively fix line too long problem before tomorrow's dashboard has a chance to complain about it. 2010-02-12 15:01:37 -05:00
David Cole e3293f8e46 Fix for issue #9125 - invent CMAKE_XCODE_ATTRIBUTE_* variable mechanism. If there are variables that begin with CMAKE_XCODE_ATTRIBUTE_ then add corresponding attributes into the generated Xcode project file. 2010-02-12 14:09:54 -05:00
David Cole 0b38bb4c53 Fix issue #2336 - honor the -C arg to ctest. Honor it for all stages of running -D dashboards from the command line and running ctest_configure, ctest_build and ctest_test commands in -S scripts. Also, allow a script to change it by setting the CTEST_CONFIGURATION_TYPE variable: allows for multiple configuration build/test cycles within one script. Add a new signature for the cmake command build_command that accepts CONFIGURATION as one argument. The original build_command signature is still there, but now marked as deprecated in the documentation. Of course... also add CTestConfig tests to verify that -C is honored for -D dashboards and -S scripts. 2009-12-04 12:09:01 -05:00
Brad King 10762565e9 Implement LINK_FLAGS_<CONFIG> property on Xcode
See issue #9841.
2009-11-06 08:04:19 -05:00
Brad King 1024ffad82 Fix Xcode <= 2.0 projects with CMAKE_BUILD_TYPE
The dependency-helper makefiles should not have per-configuration names
for Xcode <= 2.0.  Older Xcodes do not support multiple configurations.
2009-10-28 12:18:24 -04:00
Brad King 95038439ea Keep Xcode intermediate files away from output dir
Previously the Xcode generator set SYMROOT to be the target output
directory.  This told Xcode to put the "<proj>.build" directory in the
output path too.

This commit sets SYMROOT, CONFIGURATION_BUILD_DIR, and OBJROOT to put
intermediate files in the build directory corresponding to the source
directory that created each target.  This is more consistent with the VS
IDE generators.  Now only the build output files (actual targets) go to
the target output directory.
2009-10-28 09:12:38 -04:00
Brad King 7b28fbd656 Fix Xcode dylib version default
The commit "Set version info for shared libs on OSX" taught the Xcode
generator to honor VERSION and SOVERSION properties.  However, it also
set version '1.0.0' as the default when no version property is set,
which is inconsistent with the Makefiles generator.  This commit fixes
the default to '0.0.0' for consistency.

See issue #9773.
2009-10-26 10:05:46 -04:00
Brad King 70e98c73e9 Add Xcode file association for Fortran
Intel Fortran on Mac OS X enables Fortran support in Xcode.  This commit
teaches CMake to associate Fortran sources properly in Xcode projects.

See issue #9739.
2009-10-22 10:57:44 -04:00
Brad King 2dc39b8c32 Define per-target OSX_ARCHITECTURES property
The CMAKE_OSX_ARCHITECTURES variable works only as a global setting.
This commit defines target properties

  OSX_ARCHITECTURES
  OSX_ARCHITECTURES_<CONFIG>

to specify OS X architectures on a per-target and per-configuration
basis.  See issue #8725.
2009-10-21 13:00:49 -04:00