Commit Graph

10077 Commits

Author SHA1 Message Date
Bill Hoffman dd09d88065 Add JOM support and clean up some of the tar -E stuff 2009-11-05 15:00:15 -05:00
Zach Mullen 9f105a3f6d Fix style warning in cmsystemtools, cosmetic change to ctest code 2009-11-05 11:37:47 -05:00
Zach Mullen 9aa4e134b5 Fixed infinite loop condition when a test's dependent test executable could not be found. 2009-11-05 11:03:07 -05:00
KWSys Robot 0cdc1e979e KWSys Nightly Date Stamp 2009-11-04 23:58:17 -05:00
Brad King 3a790251f4 Document and test find_package <pkg>_DIR env var
The find_package(<pkg>) command checks the <pkg>_DIR environment
variable.  This commit documents and tests the feature.
2009-11-04 13:14:57 -05:00
Zach Mullen cdbbe00a8b Fix unused param warning resulting from libarchive API change. 2009-11-04 11:36:23 -05:00
Zach Mullen d6630330d6 Fixed ctest doc typos. (bug 9836) 2009-11-04 10:24:30 -05:00
KWSys Robot f87bdbf328 KWSys Nightly Date Stamp 2009-11-03 23:58:33 -05:00
Bill Hoffman b0d43475c6 Fix warning 2009-11-03 17:21:25 -05:00
Bill Hoffman 5f41fe03ca Fix warnings for unused variables 2009-11-03 16:50:49 -05:00
Zach Mullen 85912a3777 Added TARGET, CONFIGURATION, PROJECT_NAME, and FLAGS arguments to ctest_build command 2009-11-03 16:46:30 -05:00
Bill Hoffman 78b2d5097c Fix cygwin package stuff to work with libarchive 2009-11-03 09:40:57 -05:00
KWSys Robot 1b1d954f7e KWSys Nightly Date Stamp 2009-11-02 23:58:29 -05:00
Zach Mullen d47ada823a Added logic to check for cycles in the test dependency graph before any tests are run. Previously a cycle resulted in a segfault from stack overflow. 2009-11-02 12:52:50 -05:00
Brad King 59f6f383e9 Warn on set(PARENT_SCOPE) at top scope
Previously we silently ignored such calls and set nothing.  The commit
"Initialize directory scope with closure of parent" inroduced a bad test
for the top scope.  This commit fixes the test to avoid dereferencing a
null pointer, and adds a warning when the case is encountered.
2009-11-02 11:56:17 -05:00
Bill Hoffman d4b8945301 Fix for hpux... 2009-11-02 09:20:53 -05:00
KWSys Robot 66fdf2038c KWSys Nightly Date Stamp 2009-11-01 23:58:34 -05:00
KWSys Robot e2d9595ae9 KWSys Nightly Date Stamp 2009-10-31 23:58:41 -04:00
KWSys Robot b7e25ab3e0 KWSys Nightly Date Stamp 2009-10-30 23:58:46 -04:00
Clinton Stimpson 3dab0e477f Fix bug #9722. Report error when not able to create build directory. 2009-10-30 15:02:25 -04:00
Bill Hoffman fb51d98562 Switch to using libarchive from libtar for cpack and cmake -E tar
This allows for a built in bzip and zip capability, so external tools
will not be needed for these packagers.  The cmake -E tar xf should be
able to handle all compression types now as well.
2009-10-30 13:10:56 -04:00
David Cole 43d07f6620 Fix more mismatched new[] / delete[] (eliminate invalid auto_ptr use) to correct valgrind reported memory issues. 2009-10-30 10:31:54 -04:00
KWSys Robot 4e26159ec2 KWSys Nightly Date Stamp 2009-10-29 23:58:53 -04:00
Zach Mullen 8612aa10b6 Hook for scheduling tests in a random order
This may help statistically detect implicit dependencies among unit
tests while running in parallel.
2009-10-29 15:30:12 -04:00
Bill Hoffman d7a3277fb3 Fix bug#9767 catch missing leak. 2009-10-29 08:38:04 -04:00
KWSys Robot 45d0e96694 KWSys Nightly Date Stamp 2009-10-28 23:59:01 -04:00
Brad King 74c59a748d Introduce per-config OUTPUT_DIRECTORY properties
We create per-configuration target properties to specify ARCHIVE,
LIBRARY, and RUNTIME output directories.  The properties override the
generic properties for the <CONFIG> configuration:

  ARCHIVE_OUTPUT_DIRECTORY -> ARCHIVE_OUTPUT_DIRECTORY_<CONFIG>
  LIBRARY_OUTPUT_DIRECTORY -> LIBRARY_OUTPUT_DIRECTORY_<CONFIG>
  RUNTIME_OUTPUT_DIRECTORY -> RUNTIME_OUTPUT_DIRECTORY_<CONFIG>

For multi-configuration generators, the per-configuration subdirectory
normally appended to the generic output directory is not added to the
configuration-specific property values.  This allows projects to set the
exact location at which binaries will be placed for each configuration.

See issue #9163.
2009-10-28 13:35:25 -04:00
Brad King ba728f911a Consolidate duplicate documentation in cmTarget
The documentation of (ARCHIVE|LIBRARY|RUNTIME)_OUTPUT_DIRECTORY was
duplicated.  We consolidate it using a macro.
2009-10-28 13:34:59 -04:00
Brad King b38c2929b0 Create a static library's output dir for VS 6
VS 6 forgets to create the output directory for a static library if it
differs from the intermediate files directory.  We work around this VS
bug by creating a pre-link event on the library target to make the
directory.
2009-10-28 12:19:15 -04:00
Brad King 90b8164e44 Use per-config output dir in VS 6 templates
This commit removes use of configuration-less cmTarget::GetDirectory()
by the VS 6 generator (except for compatibility with user templates).
We replace OUTPUT_DIRECTORY_<CONFIG> tokens in the templates using the
per-configuration result of cmTarget::GetDirectory(config).
2009-10-28 12:18:55 -04: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 172d503c61 Fix try_compile when file cannot be found
The try_compile() command's COPY_FILE option should not try to actually
copy the file if it cannot be found.  Some C runtime library's fopen
cannot handle an empty file name.
2009-10-28 11:24:08 -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 e0d0d5db0f Remove unreachable code in cmIfCommand
The commit "Fix if() command and CMP0012 OLD/NEW behavior" introduced an
unreachable 'break' after 'return' in a switch statement.  We remove it.
2009-10-28 08:45:46 -04:00
KWSys Robot e97fc32a63 KWSys Nightly Date Stamp 2009-10-27 23:59:07 -04:00
Zack Galbreath 134d8dee1e BUG: hardcore some values so output matches cmVS10CLFlagTable.h (addresses bug #9753) 2009-10-27 11:35:37 -04:00
Zach Mullen e2b63e473d Fix working dir issue for ctest show only mode (-N) 2009-10-27 10:16:01 -04:00
Brad King cb185d93d2 Fix if() command and CMP0012 OLD/NEW behavior
The commit "modified the if command to address bug 9123 some" changed
the if() command behavior with respect to named boolean constants.  It
introduced policy CMP0012 to provide compatibility.  However, it also
changed behavior with respect to numbers (like '2') but did not cover
the change with the policy.  Also, the behavior it created for numbers
is confusing ('2' is false).

This commit teaches if() to recognize numbers again, and treats them
like the C language does in terms of boolean conversion.  We also fix
the CMP0012 check to trigger in all cases where the result of boolean
coersion differs from that produced by CMake 2.6.4.
2009-10-27 09:07:39 -04:00
Brad King 9f43fa602d Report expanded arguments in if() command errors
The if() command reports its arguments at the beginning of some error
messages.  Originally it reported the un-expanded form of the arguments
because in ancient CMake versions no context information was available.
Now it is more useful to see the real arguments, which may be mentioned
in the main error message.  Since full context information is now
available, users can refer back to the source if they need to see the
unexpanded form of the arguments.

For example, the code

  set(regex "++")
  if("x" MATCHES "${regex}")
  endif()

now produces the message

  if given arguments:

    "x" "MATCHES" "++"

  Regular expression "++" cannot compile

instead of

  if given arguments

    "x" MATCHES "${regex}"

  Regular expression "++" cannot compile
2009-10-27 09:01:33 -04:00
KWSys Robot 92caf34733 KWSys Nightly Date Stamp 2009-10-26 23:59:12 -04:00
David Cole e0bbaa889a Correct one of the valgrind errors from the CPackTestAllGenerators test. Do not use auto_ptr on a new [] allocation because auto_ptr does not use delete []. 2009-10-26 13:49:20 -04:00
Clinton Stimpson 0b8837814a ENH: Move SetErrorMode around calls to generate and configure instead of setting it for the whole application. 2009-10-26 13:18:15 -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
Zach Mullen 99697308f3 Add a ctest test to cover cmCTestBatchTestHandler. Since its behavior isn't fully defined yet, we just run it as is and don't care much about the result. 2009-10-26 09:44:08 -04:00
Brad King 5ff4e04180 Revert "Always set OutputPath in VS 10 projects"
The reverted commit attempted to preserve the "../" PREFIX work-around
for avoiding per-config build directories in the VS IDE generators.
However, the original reporter has concluded that a "../" PREFIX no
longer works everywhere in VS 10 project files anyway.  Rather than set
OutputPath, this commit restores the $(OutDir)$(TargetName)$(TargetExt)
default.

See issue #9768.
2009-10-26 08:57:01 -04:00
KWSys Robot 3d8784cd52 KWSys Nightly Date Stamp 2009-10-25 23:59:16 -04:00
KWSys Robot 609d27e4fa KWSys Nightly Date Stamp 2009-10-24 23:59:27 -04:00
KWSys Robot f5545899ae KWSys Nightly Date Stamp 2009-10-23 23:59:33 -04:00
Bill Hoffman 7963046350 Fix the showing of non-cpp files in the IDE 2009-10-23 17:02:27 -04:00
Brad King 8ae66bf456 Fix optionally-valued booleans in VS 10 flag table
This commit fixes the cmparseMSBuildXML.py script to generate correct
flag table entries for booleans with optional value.  These flags use
two entries: the first should ignore the value and enable the option,
and the second should use the value if given.  Previously the first
entry did not recognize flags with values.

In particular this fixes flags like /MP4, but the change corrects
matching of some other flags too.  See issue #9771.
2009-10-23 14:59:26 -04:00