Author: rinrab Date: Wed Jul 10 22:05:02 2024 New Revision: 1919108 URL: http://svn.apache.org/viewvc?rev=1919108&view=rev Log: On the 'cmake' branch: Install executable targets.
* build/generator/gen_cmake.py (cmake_target): Add the install_target field. (Generator.write): Initialize the install_target variable and pass it to the ezt template. * build/generator/templates/targets.cmake.ezt (libs): Remove install; instead it is added globally under condition. (): Install target if install_target is true. Modified: subversion/branches/cmake/build/generator/gen_cmake.py subversion/branches/cmake/build/generator/templates/targets.cmake.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=1919108&r1=1919107&r2=1919108&view=diff ============================================================================== --- subversion/branches/cmake/build/generator/gen_cmake.py (original) +++ subversion/branches/cmake/build/generator/gen_cmake.py Wed Jul 10 22:05:02 2024 @@ -33,7 +33,7 @@ class cmake_target(): def __init__(self, name: str, type: str, sources, libs, msvc_libs, msvc_objects, msvc_export, enable_condition, group: str, build_type: str, - description: str, srcdir: str): + description: str, srcdir: str, install_target: bool): self.name = name self.type = type self.sources = sources @@ -52,6 +52,7 @@ class cmake_target(): self.build_type = build_type self.description = description self.srcdir = srcdir + self.install_target = ezt.boolean(install_target) def get_target_type(target: gen_base.Target): if isinstance(target, gen_base.TargetExe): @@ -186,6 +187,11 @@ class Generator(gen_base.GeneratorBase): else: msvc_libs.append(lib) + if isinstance(target, gen_base.TargetLib) or target.install == "bin": + install_target = True + else: + install_target = False + new_target = cmake_target( name = target.name, type = target_type, @@ -199,6 +205,7 @@ class Generator(gen_base.GeneratorBase): build_type = build_type, description = target.desc, srcdir = target.path, + install_target = install_target, ) targets.append(new_target) Modified: subversion/branches/cmake/build/generator/templates/targets.cmake.ezt URL: http://svn.apache.org/viewvc/subversion/branches/cmake/build/generator/templates/targets.cmake.ezt?rev=1919108&r1=1919107&r2=1919108&view=diff ============================================================================== --- subversion/branches/cmake/build/generator/templates/targets.cmake.ezt (original) +++ subversion/branches/cmake/build/generator/templates/targets.cmake.ezt Wed Jul 10 22:05:02 2024 @@ -32,7 +32,6 @@ if ([targets.enable_condition])[is targe "${CMAKE_CURRENT_SOURCE_DIR}/subversion/include" )[if-any targets.group] target_link_libraries([targets.group] INTERFACE [targets.name])[end] - install(TARGETS [targets.name]) [end][is targets.type "exe"] add_executable([targets.name][for targets.sources] [targets.sources][end] @@ -57,6 +56,7 @@ if ([targets.enable_condition])[is targe ) if (WIN32) target_sources([targets.name] PRIVATE build/win32/svn.rc) - endif() + endif()[if-any targets.install_target] + install(TARGETS [targets.name])[end] endif() [end]