From f2091b516119472aa3815bec9d0c17f1bf72ebd8 Mon Sep 17 00:00:00 2001 From: Anthony Astolfi Date: Thu, 7 Dec 2023 10:04:09 -0500 Subject: [PATCH 1/5] Add diagnostics. --- conanfile.py | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/conanfile.py b/conanfile.py index cc6e51a..48f57e4 100644 --- a/conanfile.py +++ b/conanfile.py @@ -10,7 +10,7 @@ from conan.tools.cmake import CMakeToolchain, CMake, cmake_layout, CMakeDeps from conan.tools.files import copy -import os, sys, platform +import os, sys, platform, traceback VERBOSE = os.getenv('VERBOSE') and True or False @@ -38,14 +38,22 @@ class LlfsConan(ConanFile): #+++++++++++-+-+--+----- --- -- - - - - def _append_script_dir(self): - script_dir1 = os.path.join(os.path.dirname(__file__), 'script') - sys.path.append(script_dir1) - try: - script_dir2 = os.path.join(os.path.split(self.source_folder)[0], 'script') - sys.path.append(script_dir2) - except: - pass + print(f'BEFORE modifying sys.path; cwd={os.getcwd()}, sys.path={sys.path}, source_folder={self.source_folder}, __file__={__file__}, stack=') + traceback.print_stack() + + script_dir1 = os.path.join(os.path.dirname(__file__), 'script') + sys.path.append(script_dir1) + + try: + script_dir2 = os.path.join(os.path.split(self.source_folder)[0], 'script') + sys.path.append(script_dir2) + except: + pass + + finally: + print(f'AFTER modifying sys.path; cwd={os.getcwd()}, sys.path={sys.path}') + #+++++++++++-+-+--+----- --- -- - - - - def set_version(self): From 04e06a9430609fda8ce07804ba4ed2f8d6f76322 Mon Sep 17 00:00:00 2001 From: Anthony Astolfi Date: Thu, 7 Dec 2023 10:06:29 -0500 Subject: [PATCH 2/5] WIP --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index 48f57e4..d4c002b 100644 --- a/conanfile.py +++ b/conanfile.py @@ -40,7 +40,7 @@ class LlfsConan(ConanFile): def _append_script_dir(self): try: print(f'BEFORE modifying sys.path; cwd={os.getcwd()}, sys.path={sys.path}, source_folder={self.source_folder}, __file__={__file__}, stack=') - traceback.print_stack() + #traceback.print_stack() script_dir1 = os.path.join(os.path.dirname(__file__), 'script') sys.path.append(script_dir1) From 8e95eeefba77fb2ca6c3f4e58ef6d89f006196bb Mon Sep 17 00:00:00 2001 From: Anthony Astolfi Date: Thu, 7 Dec 2023 13:19:15 -0500 Subject: [PATCH 3/5] WIP --- conanfile.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/conanfile.py b/conanfile.py index d4c002b..7d57317 100644 --- a/conanfile.py +++ b/conanfile.py @@ -38,9 +38,17 @@ class LlfsConan(ConanFile): #+++++++++++-+-+--+----- --- -- - - - - def _append_script_dir(self): + newline = "\n " try: - print(f'BEFORE modifying sys.path; cwd={os.getcwd()}, sys.path={sys.path}, source_folder={self.source_folder}, __file__={__file__}, stack=') - #traceback.print_stack() + print( + f'BEFORE modifying sys.path:' + + f'\n cwd={os.getcwd()}' + + f'\n sys.path={newline + newline.join(sys.path)}' + + f'\n source_folder={self.source_folder}' + + f'\n __file__={__file__}' + + f'\n stack=', file=sys.stderr + ) + traceback.print_stack(file=sys.stderr) script_dir1 = os.path.join(os.path.dirname(__file__), 'script') sys.path.append(script_dir1) @@ -52,7 +60,12 @@ def _append_script_dir(self): pass finally: - print(f'AFTER modifying sys.path; cwd={os.getcwd()}, sys.path={sys.path}') + print( + f'\nAFTER modifying sys.path:' + + f'\n cwd={os.getcwd()}' + + f'\n sys.path={newline + newline.join(sys.path)}', file=sys.stderr + ) + pass #+++++++++++-+-+--+----- --- -- - - - - From bb2c2fee1dffc6a0703220e2e90c2fa51ee494e8 Mon Sep 17 00:00:00 2001 From: Anthony Astolfi Date: Thu, 7 Dec 2023 15:08:47 -0500 Subject: [PATCH 4/5] Simplify conanfile.py. --- conanfile.py | 58 ++++++++++++---------------------------------------- 1 file changed, 13 insertions(+), 45 deletions(-) diff --git a/conanfile.py b/conanfile.py index 7d57317..6e9eca4 100644 --- a/conanfile.py +++ b/conanfile.py @@ -12,7 +12,14 @@ import os, sys, platform, traceback -VERBOSE = os.getenv('VERBOSE') and True or False + +#==#==========+==+=+=++=+++++++++++-+-+--+----- --- -- - - - - +# Import batt helper utilities module. +# +sys.path.append(os.path.join(os.path.dirname(__file__), 'script')) +import batt +# +#+++++++++++-+-+--+----- --- -- - - - - class LlfsConan(ConanFile): @@ -27,52 +34,20 @@ class LlfsConan(ConanFile): default_options = {"shared": False} build_policy = "missing" + exports = [ + "script/*.py", + "script/*.sh", + ] exports_sources = [ "src/CMakeLists.txt", "src/**/*.hpp", "src/**/*.ipp", "src/**/*.cpp", - "script/*.py", - "script/*.sh", ] - - #+++++++++++-+-+--+----- --- -- - - - - - def _append_script_dir(self): - newline = "\n " - try: - print( - f'BEFORE modifying sys.path:' + - f'\n cwd={os.getcwd()}' + - f'\n sys.path={newline + newline.join(sys.path)}' + - f'\n source_folder={self.source_folder}' + - f'\n __file__={__file__}' + - f'\n stack=', file=sys.stderr - ) - traceback.print_stack(file=sys.stderr) - - script_dir1 = os.path.join(os.path.dirname(__file__), 'script') - sys.path.append(script_dir1) - - try: - script_dir2 = os.path.join(os.path.split(self.source_folder)[0], 'script') - sys.path.append(script_dir2) - except: - pass - - finally: - print( - f'\nAFTER modifying sys.path:' + - f'\n cwd={os.getcwd()}' + - f'\n sys.path={newline + newline.join(sys.path)}', file=sys.stderr - ) - pass #+++++++++++-+-+--+----- --- -- - - - - def set_version(self): - self._append_script_dir() - import batt - batt.VERBOSE = VERBOSE self.version = batt.get_version(no_check_conan=True) batt.verbose(f'VERSION={self.version}') @@ -106,8 +81,6 @@ def requirements(self): transitive_headers=True, transitive_libs=True) - self._append_script_dir() - import batt batt.conanfile_requirements(self, deps, override_deps, platform_deps) @@ -118,13 +91,8 @@ def layout(self): def generate(self): tc = CMakeToolchain(self) tc.generate() - deps = CMakeDeps(self) deps.generate() - - self._append_script_dir() - import batt - batt.VERBOSE = VERBOSE batt.generate_conan_find_requirements(self) @@ -138,7 +106,7 @@ def configure(self): def build(self): cmake = CMake(self) - cmake.verbose = VERBOSE + cmake.verbose = batt.VERBOSE cmake.configure() cmake.build() From 4f2202e18a2c8a48949613cb9599f209b8c44cbc Mon Sep 17 00:00:00 2001 From: Anthony Astolfi Date: Thu, 7 Dec 2023 15:25:11 -0500 Subject: [PATCH 5/5] Remove unused import `traceback` from conanfile.py. --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conanfile.py b/conanfile.py index 6e9eca4..6ba32b1 100644 --- a/conanfile.py +++ b/conanfile.py @@ -10,7 +10,7 @@ from conan.tools.cmake import CMakeToolchain, CMake, cmake_layout, CMakeDeps from conan.tools.files import copy -import os, sys, platform, traceback +import os, sys, platform #==#==========+==+=+=++=+++++++++++-+-+--+----- --- -- - - - -