Author: rinrab
Date: Sat Jun 29 16:12:31 2024
New Revision: 1918749
URL: http://svn.apache.org/viewvc?rev=1918749&view=rev
Log:
On the 'cmake' branch: Configure condition for target to be enabled from
Python script. Currently, it is always set `TRUE`.
* build/generator/gen_cmake.py
(cmake_target): Add enable_condition field to the class.
(Generator.write): Pass enable_condition to new targets.
* build/generator/templates/CMakeLists.txt.ezt
(targets loop): Generate `if` over the targets with target.enable_condition
as the condition. Neste the body to right by two spaces.
Modified:
subversion/branches/cmake/build/generator/gen_cmake.py
subversion/branches/cmake/build/generator/templates/CMakeLists.txt.ezt
Modified: subversion/branches/cmake/build/generator/gen_cmake.py
URL:
http://svn.apache.org/viewvc/subversion/branches/cmake/build/generator/gen_cmake.py?rev=1918749&r1=1918748&r2=1918749&view=diff
==============================================================================
--- subversion/branches/cmake/build/generator/gen_cmake.py (original)
+++ subversion/branches/cmake/build/generator/gen_cmake.py Sat Jun 29 16:12:31
2024
@@ -31,7 +31,7 @@ class _eztdata(object):
class cmake_target():
def __init__(self, name: str, type: str, sources,
libs, msvc_libs, msvc_objects,
- group: str):
+ enable_condition: str, group: str):
self.name = name
self.type = type
self.sources = sources
@@ -40,6 +40,7 @@ class cmake_target():
self.msvc_libs = msvc_libs
self.msvc_objects = msvc_objects
+ self.enable_condition = enable_condition
self.group = group
def get_target_type(target: gen_base.Target):
@@ -87,6 +88,7 @@ class Generator(gen_base.GeneratorBase):
for target in self.get_install_sources():
target: gen_base.Target
group = None
+ enable_condition = "TRUE"
if isinstance(target, gen_base.TargetScript):
# there is nothing to build
@@ -157,6 +159,7 @@ class Generator(gen_base.GeneratorBase):
libs = libs,
msvc_libs = msvc_libs,
msvc_objects = msvc_objects,
+ enable_condition = enable_condition,
group = group
)
Modified: subversion/branches/cmake/build/generator/templates/CMakeLists.txt.ezt
URL:
http://svn.apache.org/viewvc/subversion/branches/cmake/build/generator/templates/CMakeLists.txt.ezt?rev=1918749&r1=1918748&r2=1918749&view=diff
==============================================================================
--- subversion/branches/cmake/build/generator/templates/CMakeLists.txt.ezt
(original)
+++ subversion/branches/cmake/build/generator/templates/CMakeLists.txt.ezt Sat
Jun 29 16:12:31 2024
@@ -39,23 +39,25 @@ if (WIN32)
"WIN32"
)
endif()
-[for targets][is targets.type "lib"]
-add_library([targets.name][for targets.sources]
- [targets.sources][end]
-)
-target_include_directories([targets.name] PUBLIC
${SVN_INCLUDE_DIRECTORIES})[if-any targets.group]
-list(APPEND [targets.group] [targets.name])[end]
-[end][is targets.type "exe"]
-add_executable([targets.name][for targets.sources]
- [targets.sources][end]
-)
-[end]target_link_libraries([targets.name] PRIVATE[for targets.libs]
- [targets.libs][end]
-)[if-any targets.msvc_libs]
-if (WIN32)
- target_link_libraries([targets.name] PRIVATE[for targets.msvc_libs]
[targets.msvc_libs][end])
-endif()[end][if-any targets.msvc_objects]
-if (MSVC)
- set_target_properties([targets.name] PROPERTIES LINK_FLAGS[for
targets.msvc_objects] [targets.msvc_objects][end])
-endif()[end]
+[for targets]
+if ([targets.enable_condition])[is targets.type "lib"]
+ add_library([targets.name][for targets.sources]
+ [targets.sources][end]
+ )
+ target_include_directories([targets.name] PUBLIC
${SVN_INCLUDE_DIRECTORIES})[if-any targets.group]
+ list(APPEND [targets.group] [targets.name])[end]
+ [end][is targets.type "exe"]
+ add_executable([targets.name][for targets.sources]
+ [targets.sources][end]
+ )
+ [end]target_link_libraries([targets.name] PRIVATE[for targets.libs]
+ [targets.libs][end]
+ )[if-any targets.msvc_libs]
+ if (WIN32)
+ target_link_libraries([targets.name] PRIVATE[for targets.msvc_libs]
[targets.msvc_libs][end])
+ endif()[end][if-any targets.msvc_objects]
+ if (MSVC)
+ set_target_properties([targets.name] PROPERTIES LINK_FLAGS[for
targets.msvc_objects] [targets.msvc_objects][end])
+ endif()[end]
+endif()
[end]