[Cmake-commits] CMake branch, master, updated. v2.8.11-186-gdc85291
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, master has been updated via dc85291c57be92e6f4a9b86ae87d5639fbb4dd6f (commit) via 74f24b28423751bd775b66e13078db2fa71a932d (commit) from 239604685d3cd0a9f0e96bb69314ed98df9e3bea (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dc85291c57be92e6f4a9b86ae87d5639fbb4dd6f commit dc85291c57be92e6f4a9b86ae87d5639fbb4dd6f Merge: 2396046 74f24b2 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:19:43 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:19:43 2013 -0400 Merge topic 'geh-add-missing-test' 74f24b2 Tests/Module/GenerateExportHeader: Test exported free-function --- Summary of changes: .../libsharedtest/CMakeLists.txt |1 + 1 files changed, 1 insertions(+), 0 deletions(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, master, updated. v2.8.11-190-g6aba976
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, master has been updated via 6aba97642737873921f312e0bbaf18edfabf6e6f (commit) via 7e24997fedbcaa4f1db8e295ca1845dadf50ff55 (commit) from a2e80aaa822eee5ee5e27857f711d18857b7aa74 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6aba97642737873921f312e0bbaf18edfabf6e6f commit 6aba97642737873921f312e0bbaf18edfabf6e6f Merge: a2e80aa 7e24997 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:20:20 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:20:20 2013 -0400 Merge topic 'geh-cleanup-identifiers' 7e24997 GenerateExportHeader: Generate only C identifiers as defines --- Summary of changes: Modules/GenerateExportHeader.cmake |6 ++ Tests/Module/GenerateExportHeader/CMakeLists.txt |3 +++ .../c_identifier/CMakeLists.txt| 13 + .../c_identifier/c_identifier_class.cpp|7 +++ .../c_identifier/c_identifier_class.h | 13 + .../GenerateExportHeader/c_identifier/main.cpp |8 6 files changed, 50 insertions(+), 0 deletions(-) create mode 100644 Tests/Module/GenerateExportHeader/c_identifier/CMakeLists.txt create mode 100644 Tests/Module/GenerateExportHeader/c_identifier/c_identifier_class.cpp create mode 100644 Tests/Module/GenerateExportHeader/c_identifier/c_identifier_class.h create mode 100644 Tests/Module/GenerateExportHeader/c_identifier/main.cpp hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v2.8.11-2203-gc36e027
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via c36e02752875791e7e5fe534bd1753a37c8cfd97 (commit) via 6aba97642737873921f312e0bbaf18edfabf6e6f (commit) via a2e80aaa822eee5ee5e27857f711d18857b7aa74 (commit) via dc85291c57be92e6f4a9b86ae87d5639fbb4dd6f (commit) via 239604685d3cd0a9f0e96bb69314ed98df9e3bea (commit) via 14d90d81de5ecdeb23a0798865f83598689f237d (commit) via 4ae24a105e418068abe85e300c33a7e6a7754d69 (commit) via 795e369e6b23e397e6cd8a8fe7769790f7e2800d (commit) via 3cc5d3883e295f231ed449721c43699fbd205a0b (commit) from 8d488bfe39388cd7a2d51b03949421a6ad994d6f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c36e02752875791e7e5fe534bd1753a37c8cfd97 commit c36e02752875791e7e5fe534bd1753a37c8cfd97 Merge: 8d488bf 6aba976 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:24:45 2013 -0400 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 09:24:45 2013 -0400 Merge branch 'master' into next --- Summary of changes: Source/CMakeVersion.cmake |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v2.8.11-2205-g07473a6
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 07473a69c38a87f5d365d6a28125a37a954df8f7 (commit) via 015309fc9f87babaadc2510eb80298b1f2389e8c (commit) from c36e02752875791e7e5fe534bd1753a37c8cfd97 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=07473a69c38a87f5d365d6a28125a37a954df8f7 commit 07473a69c38a87f5d365d6a28125a37a954df8f7 Merge: c36e027 015309f Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:39:15 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:39:15 2013 -0400 Merge topic 'silence-vs6-warnings' into next 015309f Tests/CompileDefinitions: Avoid spaces in defines on VS 6 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=015309fc9f87babaadc2510eb80298b1f2389e8c commit 015309fc9f87babaadc2510eb80298b1f2389e8c Author: Stephen Kelly steve...@gmail.com AuthorDate: Wed May 22 10:25:27 2013 +0200 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 09:35:43 2013 -0400 Tests/CompileDefinitions: Avoid spaces in defines on VS 6 The VS 6 IDE does not like spaces in definition values so CMake drops them and warns. The Tests/CompileDefinitions test C code that looks for the dropped definitions already knows to skip them, but CMake still warns. Silence the warnings by avoiding such values in the first place on VS 6. diff --git a/Tests/CompileDefinitions/CMakeLists.txt b/Tests/CompileDefinitions/CMakeLists.txt index d3e9a3e..930d220 100644 --- a/Tests/CompileDefinitions/CMakeLists.txt +++ b/Tests/CompileDefinitions/CMakeLists.txt @@ -5,6 +5,7 @@ project(CompileDefinitions) if (${CMAKE_GENERATOR} STREQUAL Visual Studio 6) add_definitions(-DNO_SPACES_IN_DEFINE_VALUES) +set(NO_SPACES_IN_DEFINE_VALUES 1) endif() # Use compile flags to tell executables which config is built diff --git a/Tests/CompileDefinitions/add_definitions_command/CMakeLists.txt b/Tests/CompileDefinitions/add_definitions_command/CMakeLists.txt index d3886a1..23e0134 100644 --- a/Tests/CompileDefinitions/add_definitions_command/CMakeLists.txt +++ b/Tests/CompileDefinitions/add_definitions_command/CMakeLists.txt @@ -1,8 +1,15 @@ project(add_definitions_command) -add_definitions(-DCMAKE_IS_FUN -DCMAKE_IS=Fun -DCMAKE_IS_=Fun -DCMAKE_IS_REALLY=Very Fun) -add_definitions(-DCMAKE_IS_=Fun -DCMAKE_IS_REALLY=Very Fun -DCMAKE_IS_FUN -DCMAKE_IS=Fun) +add_definitions(-DCMAKE_IS_FUN -DCMAKE_IS=Fun -DCMAKE_IS_=Fun) +if (NOT NO_SPACES_IN_DEFINE_VALUES) + add_definitions(-DCMAKE_IS_REALLY=Very Fun) +endif() +add_definitions(-DCMAKE_IS_=Fun) +if (NOT NO_SPACES_IN_DEFINE_VALUES) + add_definitions(-DCMAKE_IS_REALLY=Very Fun) +endif() +add_definitions(-DCMAKE_IS_FUN -DCMAKE_IS=Fun) add_definitions(-DBUILD_IS_DEBUG=$CONFIG:Debug -DBUILD_IS_NOT_DEBUG=$NOT:$CONFIG:Debug) add_executable(add_definitions_command_executable ../compiletest.cpp) diff --git a/Tests/CompileDefinitions/add_definitions_command_with_target_prop/CMakeLists.txt b/Tests/CompileDefinitions/add_definitions_command_with_target_prop/CMakeLists.txt index 5587f7f..55108db 100644 --- a/Tests/CompileDefinitions/add_definitions_command_with_target_prop/CMakeLists.txt +++ b/Tests/CompileDefinitions/add_definitions_command_with_target_prop/CMakeLists.txt @@ -7,7 +7,9 @@ add_executable(add_definitions_command_with_target_prop_executable ../compiletes set_target_properties(add_definitions_command_with_target_prop_executable PROPERTIES COMPILE_DEFINITIONS CMAKE_IS_=Fun) -set_property(TARGET add_definitions_command_with_target_prop_executable APPEND PROPERTY COMPILE_DEFINITIONS CMAKE_IS_REALLY=Very Fun) +if (NOT NO_SPACES_IN_DEFINE_VALUES) + set_property(TARGET add_definitions_command_with_target_prop_executable APPEND PROPERTY COMPILE_DEFINITIONS CMAKE_IS_REALLY=Very Fun) +endif() add_definitions(-DCMAKE_IS_FUN) diff --git a/Tests/CompileDefinitions/target_prop/CMakeLists.txt b/Tests/CompileDefinitions/target_prop/CMakeLists.txt index 66a3aa6..6bf9c5c 100644 --- a/Tests/CompileDefinitions/target_prop/CMakeLists.txt +++ b/Tests/CompileDefinitions/target_prop/CMakeLists.txt @@ -5,7 +5,11 @@ add_executable(target_prop_executable ../compiletest.cpp) set_target_properties(target_prop_executable PROPERTIES COMPILE_DEFINITIONS CMAKE_IS_FUN) -set_property(TARGET target_prop_executable APPEND PROPERTY COMPILE_DEFINITIONS CMAKE_IS_REALLY=Very Fun CMAKE_IS=Fun) +if (NOT NO_SPACES_IN_DEFINE_VALUES) + set_property(TARGET target_prop_executable APPEND PROPERTY COMPILE_DEFINITIONS CMAKE_IS_REALLY=Very Fun CMAKE_IS=Fun) +else() +
[Cmake-commits] CMake branch, next, updated. v2.8.11-2207-gfa05305
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via fa0530550650e586c9b642d84cd689456c73d283 (commit) via c35961b010da87492a60afb6e5dd7436ea36ed8b (commit) from 07473a69c38a87f5d365d6a28125a37a954df8f7 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fa0530550650e586c9b642d84cd689456c73d283 commit fa0530550650e586c9b642d84cd689456c73d283 Merge: 07473a6 c35961b Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 15:47:52 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 15:47:52 2013 -0400 Merge topic 'ExternalData-no-re-stage' into next c35961b ExternalData: Do not re-stage staged object files http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c35961b010da87492a60afb6e5dd7436ea36ed8b commit c35961b010da87492a60afb6e5dd7436ea36ed8b Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 15:33:38 2013 -0400 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 15:45:38 2013 -0400 ExternalData: Do not re-stage staged object files The ExternalData_LINK_CONTENT option tells ExternalData to convert real data files it finds into content links and to stage the original content in a .ExternalData_algo_hash file. However, after a data object has been staged it is possible that a user-provided pattern in the REGEX: option will later match the staged object file. We must not process staged object files even when a user pattern matches them. Fix the implementation to not match a staged object file as a normal data file for conversion. Extend the RunCMake.ExternalData test to cover this case. diff --git a/Modules/ExternalData.cmake b/Modules/ExternalData.cmake index 187f408..8332725 100644 --- a/Modules/ExternalData.cmake +++ b/Modules/ExternalData.cmake @@ -551,7 +551,10 @@ function(_ExternalData_arg_find_files pattern regex) set(relname ${entry}) set(alg ) endif() -if(x${relname} MATCHES ^x${regex}$ AND NOT IS_DIRECTORY ${top_src}/${entry}) +if(x${relname} MATCHES ^x${regex}$ # matches +AND NOT IS_DIRECTORY ${top_src}/${entry} # not a directory +AND NOT x${relname} MATCHES (^x|/)\\.ExternalData_ # not staged obj +) set(name ${top_src}/${relname}) set(file ${top_bin}/${relname}) if(alg) diff --git a/Tests/RunCMake/ExternalData/LinkDirectory1-stdout.txt b/Tests/RunCMake/ExternalData/LinkDirectory1-stdout.txt new file mode 100644 index 000..953ea68 --- /dev/null +++ b/Tests/RunCMake/ExternalData/LinkDirectory1-stdout.txt @@ -0,0 +1,5 @@ +-- Linked Dir/ToLink.txt.md5 to ExternalData MD5/c18ff9804c8deec9eaeb17063cda8b7b +-- Raw data correctly transformed to content link! +-- Staged content exists! +-- Staged content is correct! +-- Staged content was correctly not re-staged! diff --git a/Tests/RunCMake/ExternalData/LinkDirectory1.cmake b/Tests/RunCMake/ExternalData/LinkDirectory1.cmake new file mode 100644 index 000..541fc79 --- /dev/null +++ b/Tests/RunCMake/ExternalData/LinkDirectory1.cmake @@ -0,0 +1,37 @@ +include(ExternalData) +set(ExternalData_LINK_CONTENT MD5) +set(ExternalData_SOURCE_ROOT ${CMAKE_CURRENT_BINARY_DIR}) +set(ExternalData_BINARY_ROOT ${CMAKE_CURRENT_BINARY_DIR}/ExternalData) +set(input ${CMAKE_CURRENT_BINARY_DIR}/Dir) +set(output ${CMAKE_CURRENT_BINARY_DIR}/ExternalData/Dir) +set(staged ${input}/.ExternalData_MD5_c18ff9804c8deec9eaeb17063cda8b7b) +set(content To be transformed into a content link.) +file(REMOVE ${staged}) +file(REMOVE_RECURSE ${input}) +file(WRITE ${input}/ToLink.txt ${content}) +ExternalData_Expand_Arguments(Data args DATA{${input}/,REGEX:.*}) +if(x${args} STREQUAL x${output}) + message(STATUS Raw data correctly transformed to content link!) +else() + message(FATAL_ERROR Data reference transformed to:\n ${args}\n +but we expected:\n ${output}) +endif() +if(EXISTS ${staged}) + message(STATUS Staged content exists!) +else() + message(FATAL_ERROR Staged content missing!) +endif() + +# Expand again to check whether staged content is ignored. +ExternalData_Expand_Arguments(Data args DATA{${input}/,REGEX:.*}) +file(STRINGS ${staged} staged_content LIMIT_INPUT 1024) +if(${content} STREQUAL ${staged_content}) + message(STATUS Staged content is correct!) +else() + message(STATUS Staged content is incorrect!) +endif() +if(EXISTS ${staged}.md5) + message(FATAL_ERROR Staged content was incorrectly re-staged!) +else() + message(STATUS Staged content was correctly not re-staged!) +endif() diff --git a/Tests/RunCMake/ExternalData/RunCMakeTest.cmake
[Cmake-commits] CMake branch, next, updated. v2.8.11-2209-g9cd173a
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 9cd173a67f7af3c8717369beef1fa42a19b88289 (commit) via 8961c4b68bdf3202be0451a68418922cf869439c (commit) from fa0530550650e586c9b642d84cd689456c73d283 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9cd173a67f7af3c8717369beef1fa42a19b88289 commit 9cd173a67f7af3c8717369beef1fa42a19b88289 Merge: fa05305 8961c4b Author: Matthew Woehlke matthew.woeh...@kitware.com AuthorDate: Fri May 24 16:06:10 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 16:06:10 2013 -0400 Merge topic 'fix-protobuf-threads' into next 8961c4b FindProtobuf: also find pthread http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8961c4b68bdf3202be0451a68418922cf869439c commit 8961c4b68bdf3202be0451a68418922cf869439c Author: Matthew Woehlke matthew.woeh...@kitware.com AuthorDate: Wed May 8 16:04:30 2013 -0400 Commit: Matthew Woehlke matthew.woeh...@kitware.com CommitDate: Fri May 24 15:44:10 2013 -0400 FindProtobuf: also find pthread Modify FindProtobuf.cmake to find the pthread library on UNIX platforms, and to add the same to PROTOBUF_LIBRARIES, as this is a link dependency of libraries using the protobuf headers. diff --git a/Modules/FindProtobuf.cmake b/Modules/FindProtobuf.cmake index af0c2dd..2972198 100644 --- a/Modules/FindProtobuf.cmake +++ b/Modules/FindProtobuf.cmake @@ -156,6 +156,16 @@ function(_protobuf_find_libraries name filename) endif() endfunction() +# Internal function: find threads library +function(_protobuf_find_threads) +set(CMAKE_THREAD_PREFER_PTHREAD TRUE) +find_package(Threads) +if(Threads_FOUND) +list(APPEND PROTOBUF_LIBRARIES ${CMAKE_THREAD_LIBS_INIT}) +set(PROTOBUF_LIBRARIES ${PROTOBUF_LIBRARIES} PARENT_SCOPE) +endif() +endfunction() + # # Main. # @@ -190,6 +200,9 @@ if(MSVC) set(CMAKE_FIND_LIBRARY_PREFIXES ${PROTOBUF_ORIG_FIND_LIBRARY_PREFIXES}) endif() +if(UNIX) +_protobuf_find_threads() +endif() # Find the include directory find_path(PROTOBUF_INCLUDE_DIR --- Summary of changes: Modules/FindProtobuf.cmake | 13 + 1 files changed, 13 insertions(+), 0 deletions(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v2.8.11-2211-g8252abe
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 8252abe4f37642139ee239aec67503a3ab0cdfa2 (commit) via 81b5fb5b0dd82fb6d68512275a54c50585aafee1 (commit) from 9cd173a67f7af3c8717369beef1fa42a19b88289 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8252abe4f37642139ee239aec67503a3ab0cdfa2 commit 8252abe4f37642139ee239aec67503a3ab0cdfa2 Merge: 9cd173a 81b5fb5 Author: Matthew Woehlke matthew.woeh...@kitware.com AuthorDate: Fri May 24 16:14:01 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 16:14:01 2013 -0400 Merge topic 'use-java-use-parse-arguments' into next 81b5fb5 UseJava.cmake: fully use cmake_parse_arguments in add_jar http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=81b5fb5b0dd82fb6d68512275a54c50585aafee1 commit 81b5fb5b0dd82fb6d68512275a54c50585aafee1 Author: Matthew Woehlke matthew.woeh...@kitware.com AuthorDate: Mon Mar 25 12:10:05 2013 -0400 Commit: Brad King brad.k...@kitware.com CommitDate: Thu Mar 28 10:36:33 2013 -0400 UseJava.cmake: fully use cmake_parse_arguments in add_jar Modify add_jar to fully use named arguments, rather than cmake variables, for specifying output names/directories, etc. For backward compatibility, the old variables are still honored if set, although named arguments will override them. diff --git a/Modules/UseJava.cmake b/Modules/UseJava.cmake index 0438695..aa95ed1 100644 --- a/Modules/UseJava.cmake +++ b/Modules/UseJava.cmake @@ -6,6 +6,10 @@ # add_jar(target_name # [SOURCES] source1 [source2 ...] [resource1 ...] # [INCLUDE_JARS jar1 [jar2 ...]] +# [ENTRY_POINT entry] +# [VERSION version] +# [OUTPUT_NAME name] +# [OUTPUT_DIR dir] #) # # This command creates a target_name.jar. It compiles the given source files @@ -17,6 +21,9 @@ # listed as sources are ignored (as they have been since the first version of # this module). # +# The default OUTPUT_DIR can also be changed by setting the variable +# CMAKE_JAVA_TARGET_OUTPUT_DIR. +# # Additional instructions: # To add compile flags to the target you can set these flags with # the following variable: @@ -30,32 +37,30 @@ # # To use a different output name for the target you can set it with: # -# set(CMAKE_JAVA_TARGET_OUTPUT_NAME shibboleet.jar) -# add_jar(foobar foobar.java) +# add_jar(foobar foobar.java OUTPUT_NAME shibboleet.jar) # # To use a different output directory than CMAKE_CURRENT_BINARY_DIR # you can set it with: # -# set(CMAKE_JAVA_TARGET_OUTPUT_DIR ${PROJECT_BINARY_DIR}/bin) +# add_jar(foobar foobar.java OUTPUT_DIR ${PROJECT_BINARY_DIR}/bin) # -# To define an entry point in your jar you can set it with: +# To define an entry point in your jar you can set it with the ENTRY_POINT +# named argument: # -# set(CMAKE_JAVA_JAR_ENTRY_POINT com/examples/MyProject/Main) +# add_jar(example ENTRY_POINT com/examples/MyProject/Main) # # To add a VERSION to the target output name you can set it using -# CMAKE_JAVA_TARGET_VERSION. This will create a jar file with the name -# shibboleet-1.0.0.jar and will create a symlink shibboleet.jar +# the VERSION named argument to add_jar. This will create a jar file with the +# name shibboleet-1.0.0.jar and will create a symlink shibboleet.jar # pointing to the jar with the version information. # -# set(CMAKE_JAVA_TARGET_VERSION 1.2.0) -# add_jar(shibboleet shibbotleet.java) +# add_jar(shibboleet shibbotleet.java VERSION 1.2.0) # #If the target is a JNI library, utilize the following commands to #create a JNI symbolic link: # # set(CMAKE_JNI_TARGET TRUE) -# set(CMAKE_JAVA_TARGET_VERSION 1.2.0) -# add_jar(shibboleet shibbotleet.java) +# add_jar(shibboleet shibbotleet.java VERSION 1.2.0) # install_jar(shibboleet ${LIB_INSTALL_DIR}/shibboleet) # install_jni_symlink(shibboleet ${JAVA_LIB_INSTALL_DIR}) # @@ -216,23 +221,43 @@ set(_JAVA_SYMLINK_SCRIPT ${CMAKE_CURRENT_LIST_DIR}/UseJavaSymlinks.cmake) function(add_jar _TARGET_NAME) -cmake_parse_arguments(_add_jar SOURCES;INCLUDE_JARS ${ARGN}) +if(DEFINED CMAKE_JAVA_TARGET_VERSION) +set(_add_jar_VERSION ${CMAKE_JAVA_TARGET_VERSION}) +endif() +if(DEFINED CMAKE_JAVA_TARGET_OUTPUT_DIR) +set(_add_jar_OUTPUT_DIR ${CMAKE_JAVA_TARGET_OUTPUT_DIR}) +endif() +if(DEFINED CMAKE_JAVA_TARGET_OUTPUT_NAME) +set(_add_jar_OUTPUT_NAME ${CMAKE_JAVA_TARGET_OUTPUT_NAME}) +# reset +
[Cmake-commits] CMake branch, next, updated. v2.8.11-2213-g32d5f92
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 32d5f9222eeca7a9ac0e15e7f36d64f8d6932fa6 (commit) via e65ef08bf2719ffd1cc4226f9594ff7127ad8b5e (commit) from 8252abe4f37642139ee239aec67503a3ab0cdfa2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=32d5f9222eeca7a9ac0e15e7f36d64f8d6932fa6 commit 32d5f9222eeca7a9ac0e15e7f36d64f8d6932fa6 Merge: 8252abe e65ef08 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 16:33:55 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 16:33:55 2013 -0400 Merge topic 'fix-try_compile-library-spaces' into next e65ef08 try_compile: Fix quoting of libraries in generated CMakeLists.txt http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e65ef08bf2719ffd1cc4226f9594ff7127ad8b5e commit e65ef08bf2719ffd1cc4226f9594ff7127ad8b5e Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 16:27:31 2013 -0400 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 16:30:26 2013 -0400 try_compile: Fix quoting of libraries in generated CMakeLists.txt Since commit 236133e7 (Handle targets in the LINK_LIBRARIES of try_compile, 2013-02-09) libraries passed to the new LINK_LIBRARIES option of try_compile are not quoted inside the generated CMakeLists.txt file. Quote the library names so they re-parse correctly when loaded by CMake to configure and generate the test project. Reported-by: Bogdan Cristea crist...@gmail.com diff --git a/Source/cmCoreTryCompile.cxx b/Source/cmCoreTryCompile.cxx index 9f38b25..ebfcae0 100644 --- a/Source/cmCoreTryCompile.cxx +++ b/Source/cmCoreTryCompile.cxx @@ -111,7 +111,7 @@ int cmCoreTryCompile::TryCompileCode(std::vectorstd::string const argv) ++i) { extraArgs++; -libsToLink += argv[i] + ; +libsToLink += \ + argv[i] + \ ; cmTarget *tgt = this-Makefile-FindTargetToUse(argv[i].c_str()); if (!tgt) { --- Summary of changes: Source/cmCoreTryCompile.cxx |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v2.8.11-2215-ge90e20c
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via e90e20c15cd6833133f973cec136e7326da35250 (commit) via b8cc6f4eba0b7349de81a48aea18a43f99e78ca5 (commit) from 32d5f9222eeca7a9ac0e15e7f36d64f8d6932fa6 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e90e20c15cd6833133f973cec136e7326da35250 commit e90e20c15cd6833133f973cec136e7326da35250 Merge: 32d5f92 b8cc6f4 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 16:42:53 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 16:42:53 2013 -0400 Merge topic 'fix-include_directories-whitespace-handling' into next b8cc6f4 include_directories: Fix handling of empty or space-only entries http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b8cc6f4eba0b7349de81a48aea18a43f99e78ca5 commit b8cc6f4eba0b7349de81a48aea18a43f99e78ca5 Author: Stephen Kelly steve...@gmail.com AuthorDate: Mon May 20 12:25:59 2013 +0200 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 16:40:58 2013 -0400 include_directories: Fix handling of empty or space-only entries Since commit 0d46e9a0 (Store includes from the same include_directories call together., 2013-01-20) we accidentally use such entries. Fix the code to drop them instead. Update the IncludeDirectories test to cover this case. Reported-by: Christophe Giboudeaux cgiboude...@gmx.com diff --git a/Source/cmIncludeDirectoryCommand.cxx b/Source/cmIncludeDirectoryCommand.cxx index ffb0e80..30c1743 100644 --- a/Source/cmIncludeDirectoryCommand.cxx +++ b/Source/cmIncludeDirectoryCommand.cxx @@ -116,13 +116,19 @@ void cmIncludeDirectoryCommand::GetIncludes(const std::string arg, { std::string inc = arg.substr(lastPos,pos); this-NormalizeInclude(inc); - incs.push_back(inc); + if (!inc.empty()) +{ +incs.push_back(inc); +} } lastPos = pos + 1; } std::string inc = arg.substr(lastPos); this-NormalizeInclude(inc); - incs.push_back(inc); + if (!inc.empty()) +{ +incs.push_back(inc); +} } void cmIncludeDirectoryCommand::NormalizeInclude(std::string inc) @@ -133,6 +139,11 @@ void cmIncludeDirectoryCommand::NormalizeInclude(std::string inc) { inc.assign(inc, b, 1+e-b); // copy the remaining substring } + else +{ +inc = ; +return; +} if (!cmSystemTools::IsOff(inc.c_str())) { diff --git a/Tests/IncludeDirectories/CMakeLists.txt b/Tests/IncludeDirectories/CMakeLists.txt index 8a60f17..3e3ecc9 100644 --- a/Tests/IncludeDirectories/CMakeLists.txt +++ b/Tests/IncludeDirectories/CMakeLists.txt @@ -58,3 +58,14 @@ get_property(propContentAfter DIRECTORY PROPERTY INCLUDE_DIRECTORIES) if (NOT propContentAfter STREQUAL ) message(SEND_ERROR Clearing DIRECTORY property failed.) endif() + +add_library(empty_entry_test SHARED empty.cpp) +set_target_properties(empty_entry_test PROPERTIES INCLUDE_DIRECTORIES ) +include_directories(/one/two + + +) +get_target_property(incs empty_entry_test INCLUDE_DIRECTORIES) +if (NOT incs STREQUAL ;/one/two) + message(SEND_ERROR Empty include_directories entry was not ignored.) +endif() diff --git a/Tests/IncludeDirectories/empty.cpp b/Tests/IncludeDirectories/empty.cpp new file mode 100644 index 000..1787013 --- /dev/null +++ b/Tests/IncludeDirectories/empty.cpp @@ -0,0 +1,4 @@ +#ifdef _WIN32 +__declspec(dllexport) +#endif +int empty() { return 0; } --- Summary of changes: hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, master, updated. v2.8.11-192-ga6c8dce
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, master has been updated via a6c8dcee64407aa885ffdd2ad17ad294ca6aeccc (commit) via b8cc6f4eba0b7349de81a48aea18a43f99e78ca5 (commit) from 6aba97642737873921f312e0bbaf18edfabf6e6f (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a6c8dcee64407aa885ffdd2ad17ad294ca6aeccc commit a6c8dcee64407aa885ffdd2ad17ad294ca6aeccc Merge: 6aba976 b8cc6f4 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 16:43:25 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 16:43:25 2013 -0400 Merge topic 'fix-include_directories-whitespace-handling' b8cc6f4 include_directories: Fix handling of empty or space-only entries --- Summary of changes: hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, master, updated. v2.8.11-193-ga3a82b5
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, master has been updated via a3a82b5ed7f1407fe89f4e92d32446f4e354c171 (commit) from a6c8dcee64407aa885ffdd2ad17ad294ca6aeccc (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a3a82b5ed7f1407fe89f4e92d32446f4e354c171 commit a3a82b5ed7f1407fe89f4e92d32446f4e354c171 Author: Kitware Robot kwro...@kitware.com AuthorDate: Sat May 25 00:01:08 2013 -0400 Commit: Kitware Robot kwro...@kitware.com CommitDate: Sat May 25 00:01:08 2013 -0400 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index f12d928..1c8a397 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -2,5 +2,5 @@ set(CMake_VERSION_MAJOR 2) set(CMake_VERSION_MINOR 8) set(CMake_VERSION_PATCH 11) -set(CMake_VERSION_TWEAK 20130524) +set(CMake_VERSION_TWEAK 20130525) #set(CMake_VERSION_RC 1) --- Summary of changes: Source/CMakeVersion.cmake |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v2.8.11-2186-g8ebf8db
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 8ebf8dbfbf9774122701a959fc5fb1921cca1c83 (commit) via 8e15f1aea9510fc9d9009a8a7c5a00550da64fa6 (commit) from baa1395fc9195786cd14872366ba92fa85e67478 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8ebf8dbfbf9774122701a959fc5fb1921cca1c83 commit 8ebf8dbfbf9774122701a959fc5fb1921cca1c83 Merge: baa1395 8e15f1a Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:03:26 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:03:26 2013 -0400 Merge topic 'genex-generate-file' into next 8e15f1a Add some docs for file(GENERATE). http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8e15f1aea9510fc9d9009a8a7c5a00550da64fa6 commit 8e15f1aea9510fc9d9009a8a7c5a00550da64fa6 Author: Stephen Kelly steve...@gmail.com AuthorDate: Thu May 23 17:16:58 2013 +0200 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 09:00:55 2013 -0400 Add some docs for file(GENERATE). diff --git a/Source/cmFileCommand.h b/Source/cmFileCommand.h index a50b738..586fee2 100644 --- a/Source/cmFileCommand.h +++ b/Source/cmFileCommand.h @@ -88,6 +88,9 @@ public: file(UPLOAD filename url [INACTIVITY_TIMEOUT timeout]\n [TIMEOUT timeout] [STATUS status] [LOG log] [SHOW_PROGRESS])\n file(TIMESTAMP filename variable [format string] [UTC])\n +file(GENERATE OUTPUT output_file\n + INPUT input_file|CONTENT input_content\n + CONDITION expression)\n WRITE will write a message into a file called 'filename'. It overwrites the file if it already exists, and creates the file if it does not exist. (If the file is a build input, use @@ -231,6 +234,15 @@ public: it prints status messages, and NO_SOURCE_PERMISSIONS is default. Installation scripts generated by the install() command use this signature (with some undocumented options for internal use). + \n + GENERATE will write an output_file with content from an + input_file, or from input_content. The output is generated + conditionally based on the content of the condition. The file is + written at CMake generate-time and the input may contain generator + expressions. The condition, output_file and input_file may + also contain generator expressions. The condition must evaluate to + either '0' or '1'. The output_file must evaluate to a unique name + among all configurations and among all invocations of file(GENERATE). // Undocumented INSTALL options: // - RENAME name // - OPTIONAL --- Summary of changes: Source/cmFileCommand.h | 12 1 files changed, 12 insertions(+), 0 deletions(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v2.8.11-2188-g1dc3068
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 1dc3068a845d813ed18e7f1037e6bc20f0b6b158 (commit) via b983a58bdf1a03a49f2512ac68390888669ac30b (commit) from 8ebf8dbfbf9774122701a959fc5fb1921cca1c83 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1dc3068a845d813ed18e7f1037e6bc20f0b6b158 commit 1dc3068a845d813ed18e7f1037e6bc20f0b6b158 Merge: 8ebf8db b983a58 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:04:53 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:04:53 2013 -0400 Merge topic 'genex-generate-file' into next b983a58 file: Add GENERATE command to produce files at generate time http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b983a58bdf1a03a49f2512ac68390888669ac30b commit b983a58bdf1a03a49f2512ac68390888669ac30b Author: Stephen Kelly steve...@gmail.com AuthorDate: Wed Jan 2 17:10:04 2013 +0100 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 09:02:45 2013 -0400 file: Add GENERATE command to produce files at generate time The idea is to write to a temp file which contains generator expressions, and at generate time, evaluate the generator expressions, and write the result to a file. Because executables on Windows are limited in the length of command line it is possible to use, it is common to write command line arguments to a file instead and specify the file as a source of arguments. This new FILE(GENERATE) subcommand allows the use of generator expressions to create such files so that they can be used with add_custom_command for example. diff --git a/Source/cmBootstrapCommands.cxx b/Source/cmBootstrapCommands.cxx index e3a2ad4..1b7a751 100644 --- a/Source/cmBootstrapCommands.cxx +++ b/Source/cmBootstrapCommands.cxx @@ -52,6 +52,7 @@ #include cmFindProgramCommand.cxx #include cmForEachCommand.cxx #include cmFunctionCommand.cxx +#include cmGeneratorExpressionEvaluationFile.cxx #include cmGetCMakePropertyCommand.cxx #include cmGetDirectoryPropertyCommand.cxx #include cmGetFilenameComponentCommand.cxx diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx index 018ce7e..c51a72a 100644 --- a/Source/cmFileCommand.cxx +++ b/Source/cmFileCommand.cxx @@ -167,6 +167,10 @@ bool cmFileCommand { return this-HandleTimestampCommand(args); } + else if ( subCommand == GENERATE ) +{ +return this-HandleGenerateCommand(args); +} std::string e = does not recognize sub-command +subCommand; this-SetError(e.c_str()); @@ -3250,6 +3254,80 @@ cmFileCommand::HandleUploadCommand(std::vectorstd::string const args) } // +void cmFileCommand::AddEvaluationFile(const std::string inputName, + const std::string outputExpr, + const std::string condition, + bool inputIsContent + ) +{ + cmListFileBacktrace lfbt; + this-Makefile-GetBacktrace(lfbt); + + cmGeneratorExpression outputGe(lfbt); + cmsys::auto_ptrcmCompiledGeneratorExpression outputCge += outputGe.Parse(outputExpr); + + cmGeneratorExpression conditionGe(lfbt); + cmsys::auto_ptrcmCompiledGeneratorExpression conditionCge + = conditionGe.Parse(condition); + + this-Makefile-GetLocalGenerator() +-GetGlobalGenerator()-AddEvaluationFile(inputName, + outputCge, + this-Makefile, + conditionCge, + inputIsContent); +} + +// +bool cmFileCommand::HandleGenerateCommand( + std::vectorstd::string const args) +{ + if (args.size() 5) +{ +this-SetError(Incorrect arguments to GENERATE subcommand.); +return false; +} + if (args[1] != OUTPUT) +{ +this-SetError(Incorrect arguments to GENERATE subcommand.); +return false; +} + std::string condition; + if (args.size() 5) +{ +if (args[5] != CONDITION) + { + this-SetError(Incorrect arguments to GENERATE subcommand.); + return false; + } +if (args.size() != 7) + { + this-SetError(Incorrect arguments to GENERATE
[Cmake-commits] CMake branch, next, updated. v2.8.11-2190-g7e4b5f1
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 7e4b5f1866853c94e89416c996e155a2b71cbae9 (commit) via 74f24b28423751bd775b66e13078db2fa71a932d (commit) from 1dc3068a845d813ed18e7f1037e6bc20f0b6b158 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7e4b5f1866853c94e89416c996e155a2b71cbae9 commit 7e4b5f1866853c94e89416c996e155a2b71cbae9 Merge: 1dc3068 74f24b2 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:07:23 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:07:23 2013 -0400 Merge topic 'geh-add-missing-test' into next 74f24b2 Tests/Module/GenerateExportHeader: Test exported free-function http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=74f24b28423751bd775b66e13078db2fa71a932d commit 74f24b28423751bd775b66e13078db2fa71a932d Author: Stephen Kelly steve...@gmail.com AuthorDate: Mon Jul 16 10:05:22 2012 +0200 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 09:04:35 2013 -0400 Tests/Module/GenerateExportHeader: Test exported free-function diff --git a/Tests/Module/GenerateExportHeader/libsharedtest/CMakeLists.txt b/Tests/Module/GenerateExportHeader/libsharedtest/CMakeLists.txt index a5804fc..2a97d8f 100644 --- a/Tests/Module/GenerateExportHeader/libsharedtest/CMakeLists.txt +++ b/Tests/Module/GenerateExportHeader/libsharedtest/CMakeLists.txt @@ -8,6 +8,7 @@ macro(shared_build_fail Source Message) endmacro() shared_build_pass(Libshared l; return l.libshared_exported(); Failed to build exported) +shared_build_pass(return libshared_exported(); Failed to build exported function.) # if (COMPILER_HAS_DEPRECATED) # shared_build_fail(Libshared l; return l.libshared_deprecated(); Built use of deprecated class method. This should not be possible.) --- Summary of changes: hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v2.8.11-2192-g6973646
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 6973646209208817e68e2d74b17c79fbf0e56182 (commit) via 32410140a7c592090249db772fd5f18c7808a3aa (commit) from 7e4b5f1866853c94e89416c996e155a2b71cbae9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6973646209208817e68e2d74b17c79fbf0e56182 commit 6973646209208817e68e2d74b17c79fbf0e56182 Merge: 7e4b5f1 3241014 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:08:55 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:08:55 2013 -0400 Merge topic 'language-generator-expressions' into next 3241014 Add $LINK_LANGUAGE generator expression http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=32410140a7c592090249db772fd5f18c7808a3aa commit 32410140a7c592090249db772fd5f18c7808a3aa Author: Stephen Kelly steve...@gmail.com AuthorDate: Thu May 16 15:52:25 2013 +0200 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 09:06:53 2013 -0400 Add $LINK_LANGUAGE generator expression They can't be used when evaluating link libraries, but they can be used for include directories and compile definitions. Later they can be used for compile options. diff --git a/Source/cmDocumentGeneratorExpressions.h b/Source/cmDocumentGeneratorExpressions.h index ac52db0..93e9cec 100644 --- a/Source/cmDocumentGeneratorExpressions.h +++ b/Source/cmDocumentGeneratorExpressions.h @@ -74,4 +74,12 @@ the target on which the generator expression is evaluated.\n\ +#define CM_DOCUMENT_LANGUAGE_GENERATOR_EXPRESSIONS \ + Language related expressions:\n \ +$LINK_LANGUAGE = The link language of the target \ + being generated.\n \ +$LINK_LANGUAGE:lang = '1' if the link language of the \ + target being generated matches lang, else '0'.\n\ + + #endif diff --git a/Source/cmGeneratorExpressionEvaluator.cxx b/Source/cmGeneratorExpressionEvaluator.cxx index 6092aa2..7870d37 100644 --- a/Source/cmGeneratorExpressionEvaluator.cxx +++ b/Source/cmGeneratorExpressionEvaluator.cxx @@ -45,6 +45,11 @@ void reportError(cmGeneratorExpressionContext *context, // struct cmGeneratorExpressionNode { + enum { +DynamicParameters = 0, +OneOrMoreParameters = -1, +ZeroOrMoreParameters = -2 + }; virtual ~cmGeneratorExpressionNode() {} virtual bool GeneratesContent() const { return true; } @@ -110,8 +115,7 @@ static const struct ZeroNode installInterfaceNode; static const struct OP ## Node : public cmGeneratorExpressionNode \ { \ OP ## Node () {} \ -/* We let -1 carry the meaning 'at least one' */ \ - virtual int NumExpectedParameters() const { return -1; } \ + virtual int NumExpectedParameters() const { return OneOrMoreParameters; } \ \ std::string Evaluate(const std::vectorstd::string parameters, \ cmGeneratorExpressionContext *context, \ @@ -306,6 +310,60 @@ static const struct ConfigurationTestNode : public cmGeneratorExpressionNode } } configurationTestNode; +// +static const struct LinkLanguageNode : public cmGeneratorExpressionNode +{ + LinkLanguageNode() {} + + virtual int NumExpectedParameters() const { return ZeroOrMoreParameters; } + + std::string Evaluate(const std::vectorstd::string parameters, + cmGeneratorExpressionContext *context, + const GeneratorExpressionContent *content, + cmGeneratorExpressionDAGChecker *) const + { +if (parameters.size() != 0 parameters.size() != 1) + { + reportError(context, content-GetOriginalExpression(), + $LINK_LANGUAGE expression requires one or two parameters); + return std::string(); + } +cmTarget* target = context-HeadTarget; +if (!target) + { + reportError(context, content-GetOriginalExpression(), + $LINK_LANGUAGE may only be used with targets. It may not + be used with add_custom_command.); + } + +const char *lang = target-GetLinkerLanguage(context-Config); +if (parameters.size() == 0) + { + return lang ? lang : ; + } +else + { + cmsys::RegularExpression langValidator; + langValidator.compile(^[A-Za-z0-9_]*$); + if (!langValidator.find(parameters.begin()-c_str())) +{ +
[Cmake-commits] CMake branch, next, updated. v2.8.11-2194-g8d488bf
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, next has been updated via 8d488bfe39388cd7a2d51b03949421a6ad994d6f (commit) via 7e24997fedbcaa4f1db8e295ca1845dadf50ff55 (commit) from 6973646209208817e68e2d74b17c79fbf0e56182 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8d488bfe39388cd7a2d51b03949421a6ad994d6f commit 8d488bfe39388cd7a2d51b03949421a6ad994d6f Merge: 6973646 7e24997 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:11:19 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:11:19 2013 -0400 Merge topic 'geh-cleanup-identifiers' into next 7e24997 GenerateExportHeader: Generate only C identifiers as defines http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7e24997fedbcaa4f1db8e295ca1845dadf50ff55 commit 7e24997fedbcaa4f1db8e295ca1845dadf50ff55 Author: Stephen Kelly steve...@gmail.com AuthorDate: Thu May 23 07:44:04 2013 +0200 Commit: Brad King brad.k...@kitware.com CommitDate: Fri May 24 09:09:43 2013 -0400 GenerateExportHeader: Generate only C identifiers as defines The variables in this module are used to configure a header file with defines whose name depends on the name of the target. As valid names of targets may be invalid for use as defines, convert the names of the defines used to C identifiers first. This is already done in C++ code for the DEFINE_SYMBOL property. This is not as simple as ensuring that the BASE_NAME is a C identifier, because most of the define names are configurable, and because use of a BASE_NAME which is not a C identifier, such as 4square can become a C identifier by specifying a prefix in the generate_export_header macro. diff --git a/Modules/GenerateExportHeader.cmake b/Modules/GenerateExportHeader.cmake index 892ebc6..d9b7083 100644 --- a/Modules/GenerateExportHeader.cmake +++ b/Modules/GenerateExportHeader.cmake @@ -267,6 +267,7 @@ macro(_DO_GENERATE_EXPORT_HEADER TARGET_LIBRARY) if(_GEH_EXPORT_MACRO_NAME) set(EXPORT_MACRO_NAME ${_GEH_PREFIX_NAME}${_GEH_EXPORT_MACRO_NAME}) endif() + string(MAKE_C_IDENTIFIER ${EXPORT_MACRO_NAME} EXPORT_MACRO_NAME) if(_GEH_EXPORT_FILE_NAME) if(IS_ABSOLUTE ${_GEH_EXPORT_FILE_NAME}) set(EXPORT_FILE_NAME ${_GEH_EXPORT_FILE_NAME}) @@ -277,12 +278,15 @@ macro(_DO_GENERATE_EXPORT_HEADER TARGET_LIBRARY) if(_GEH_DEPRECATED_MACRO_NAME) set(DEPRECATED_MACRO_NAME ${_GEH_PREFIX_NAME}${_GEH_DEPRECATED_MACRO_NAME}) endif() + string(MAKE_C_IDENTIFIER ${DEPRECATED_MACRO_NAME} DEPRECATED_MACRO_NAME) if(_GEH_NO_EXPORT_MACRO_NAME) set(NO_EXPORT_MACRO_NAME ${_GEH_PREFIX_NAME}${_GEH_NO_EXPORT_MACRO_NAME}) endif() + string(MAKE_C_IDENTIFIER ${NO_EXPORT_MACRO_NAME} NO_EXPORT_MACRO_NAME) if(_GEH_STATIC_DEFINE) set(STATIC_DEFINE ${_GEH_PREFIX_NAME}${_GEH_STATIC_DEFINE}) endif() + string(MAKE_C_IDENTIFIER ${STATIC_DEFINE} STATIC_DEFINE) if(_GEH_DEFINE_NO_DEPRECATED) set(DEFINE_NO_DEPRECATED TRUE) @@ -292,6 +296,7 @@ macro(_DO_GENERATE_EXPORT_HEADER TARGET_LIBRARY) set(NO_DEPRECATED_MACRO_NAME ${_GEH_PREFIX_NAME}${_GEH_NO_DEPRECATED_MACRO_NAME}) endif() + string(MAKE_C_IDENTIFIER ${NO_DEPRECATED_MACRO_NAME} NO_DEPRECATED_MACRO_NAME) set(INCLUDE_GUARD_NAME ${EXPORT_MACRO_NAME}_H) @@ -300,6 +305,7 @@ macro(_DO_GENERATE_EXPORT_HEADER TARGET_LIBRARY) if(NOT EXPORT_IMPORT_CONDITION) set(EXPORT_IMPORT_CONDITION ${TARGET_LIBRARY}_EXPORTS) endif() + string(MAKE_C_IDENTIFIER ${EXPORT_IMPORT_CONDITION} EXPORT_IMPORT_CONDITION) configure_file(${_GENERATE_EXPORT_HEADER_MODULE_DIR}/exportheader.cmake.in ${EXPORT_FILE_NAME} @ONLY) diff --git a/Tests/Module/GenerateExportHeader/CMakeLists.txt b/Tests/Module/GenerateExportHeader/CMakeLists.txt index 4a5b1cb..cc954ff 100644 --- a/Tests/Module/GenerateExportHeader/CMakeLists.txt +++ b/Tests/Module/GenerateExportHeader/CMakeLists.txt @@ -168,6 +168,9 @@ add_subdirectory(lib_shared_and_statictest) add_subdirectory(override_symbol) add_subdirectory(nodeprecated) add_subdirectory(prefix) +if(NOT BORLAND) + add_subdirectory(c_identifier) +endif() if (CMAKE_COMPILER_IS_GNUCXX OR (${CMAKE_CXX_COMPILER_ID} MATCHES Clang)) # We deliberately call deprecated methods, and test for that elsewhere. diff --git a/Tests/Module/GenerateExportHeader/c_identifier/CMakeLists.txt b/Tests/Module/GenerateExportHeader/c_identifier/CMakeLists.txt new file mode 100644 index 000..9f8c8ef --- /dev/null +++ b/Tests/Module/GenerateExportHeader/c_identifier/CMakeLists.txt @@ -0,0 +1,13 @@
[Cmake-commits] CMake branch, master, updated. v2.8.11-178-g795e369
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, master has been updated via 795e369e6b23e397e6cd8a8fe7769790f7e2800d (commit) via 0aed09fd20b841a34381584b2058e1f994154f74 (commit) from 3cc5d3883e295f231ed449721c43699fbd205a0b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=795e369e6b23e397e6cd8a8fe7769790f7e2800d commit 795e369e6b23e397e6cd8a8fe7769790f7e2800d Merge: 3cc5d38 0aed09f Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:18:56 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:18:56 2013 -0400 Merge topic 'Memchecker-Mac-fix' 0aed09f Tests: ignore GuardMalloc messages on all Apple build, not just XCode ones --- Summary of changes: Tests/CTestTestMemcheck/CMakeLists.txt |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, master, updated. v2.8.11-180-g4ae24a1
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, master has been updated via 4ae24a105e418068abe85e300c33a7e6a7754d69 (commit) via a97240b969c8ce48f728ee113f47f9c2ba598aeb (commit) from 795e369e6b23e397e6cd8a8fe7769790f7e2800d (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4ae24a105e418068abe85e300c33a7e6a7754d69 commit 4ae24a105e418068abe85e300c33a7e6a7754d69 Merge: 795e369 a97240b Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:19:08 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:19:08 2013 -0400 Merge topic 'fix-include_directories-whitespace-handling' a97240b Tests/IncludeDirectories: Avoid shared library with no symbols --- Summary of changes: Tests/IncludeDirectories/empty.cpp |5 - 1 files changed, 4 insertions(+), 1 deletions(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, master, updated. v2.8.11-182-g14d90d8
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project CMake. The branch, master has been updated via 14d90d81de5ecdeb23a0798865f83598689f237d (commit) via 32410140a7c592090249db772fd5f18c7808a3aa (commit) from 4ae24a105e418068abe85e300c33a7e6a7754d69 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=14d90d81de5ecdeb23a0798865f83598689f237d commit 14d90d81de5ecdeb23a0798865f83598689f237d Merge: 4ae24a1 3241014 Author: Brad King brad.k...@kitware.com AuthorDate: Fri May 24 09:19:15 2013 -0400 Commit: CMake Topic Stage kwro...@kitware.com CommitDate: Fri May 24 09:19:15 2013 -0400 Merge topic 'language-generator-expressions' 3241014 Add $LINK_LANGUAGE generator expression --- Summary of changes: Source/cmDocumentGeneratorExpressions.h|8 ++ Source/cmGeneratorExpressionEvaluator.cxx | 72 ++-- Source/cmTarget.cxx| 10 ++- Source/cmTargetCompileDefinitionsCommand.h |1 + Source/cmTargetIncludeDirectoriesCommand.h |1 + Tests/CompileDefinitions/compiletest.c | 19 + Tests/CompileDefinitions/compiletest.cpp | 15 Tests/CompileDefinitions/compiletest_mixed_c.c | 19 + Tests/CompileDefinitions/compiletest_mixed_cxx.cpp | 19 + .../CompileDefinitions/target_prop/CMakeLists.txt | 20 ++ .../TargetIncludeDirectories/CMakeLists.txt| 16 + .../TargetIncludeDirectories/main.c|7 ++ .../TargetIncludeDirectories/main.cpp |1 + 13 files changed, 200 insertions(+), 8 deletions(-) create mode 100644 Tests/CompileDefinitions/compiletest.c create mode 100644 Tests/CompileDefinitions/compiletest_mixed_c.c create mode 100644 Tests/CompileDefinitions/compiletest_mixed_cxx.cpp create mode 100644 Tests/IncludeDirectories/TargetIncludeDirectories/main.c hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits