diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5546109d683ccd04026e4f935413ee7800c1a690..ce29162c35a3eba649a8d13d4791bc7e60d7171f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,9 +8,9 @@ variables: test:meson: script: - - python -m pip install meson ninja conan - - meson build - - meson test -C build --print-errorlogs + - python -m pip install conan + - conan create . + # - meson test -C build --print-errorlogs tags: - mfix-exa diff --git a/CMakeLists.txt b/CMakeLists.txt index 6f67595e329ee4dbead9cde5d7938004b7fcca42..356e8e0b98c78e327065bece013c11d7beb81237 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,7 +19,7 @@ find_program(CONAN_FOUND conan) if(CONAN_FOUND) message(STATUS "Using conan found at: ${CONAN_FOUND}") include(conan.cmake) - conan_cmake_run(CONANFILE conanfile.txt + conan_cmake_run(CONANFILE conanfile.py BASIC_SETUP CMAKE_TARGETS) else() message(WARNING "Did not find conan in PATH. Will try download it with PMM ") diff --git a/conanfile.py b/conanfile.py new file mode 100644 index 0000000000000000000000000000000000000000..74b382e3e824d629bdae1879c98d79c3473f8581 --- /dev/null +++ b/conanfile.py @@ -0,0 +1,30 @@ +from conans import ConanFile, Meson, tools + + +class CsgEbConan(ConanFile): + name = "csg-eb" + version = "0.1" + license = "" + author = "Deepak Rangarajan " + url = "https://mfix.netl.doe.gov/gitlab/exa/csg-eb" + description = "Library for reading CSG geometry files" + topics = ("", "", "") + settings = "os", "compiler", "build_type", "arch" + options = {"shared": [True, False]} + default_options = {"shared": False} + generators = "pkg_config" + requires = "catch2/2.12.2", "cgal/5.0.2", "taocpp-pegtl/2.8.3" + build_requires = "meson/0.54.2" + exports_sources = "meson.build", "include/*", "src/*" + + def build(self): + meson = Meson(self) + meson.configure(build_folder="build") + meson.build() + + def package(self): + self.copy("*.h", dst="include", src="csg-eb") + self.copy("*.a", dst="lib", keep_path=False) + + def package_info(self): + self.cpp_info.libs = ["csg-eb"] diff --git a/conanfile.txt b/conanfile.txt deleted file mode 100644 index bc0cd172c1c8b7df82c16c0521d75bf8b9fda232..0000000000000000000000000000000000000000 --- a/conanfile.txt +++ /dev/null @@ -1,7 +0,0 @@ -[requires] -catch2/2.12.2 -cgal/5.0.2 -taocpp-pegtl/2.8.3 - -[generators] -pkg_config diff --git a/meson.build b/meson.build index 22344fe4e6b2393a6a25a57144cb161eb671191f..000b0fc1c026d425287b94758b50380c6ad41489 100644 --- a/meson.build +++ b/meson.build @@ -1,12 +1,11 @@ -project('csg-eb', 'cpp', - version : '0.1', - default_options : [ - 'warning_level=3', - 'pkg_config_path=' + meson.build_root(), - 'cpp_std=c++2a']) - -run_command('conan', 'install', '--install-folder', meson.build_root(), - meson.current_source_dir(), check: true) +project( + 'csg-eb', 'cpp', + version : '0.1', + default_options : [ + 'warning_level=3', + 'cpp_std=c++17' + ] +) pegtl = dependency('taocpp-pegtl', method: 'pkg-config') catch2 = dependency('catch2', method: 'pkg-config')