From cf3ecdcb6814c6cf792e50ce4ed5e001ca5c45bb Mon Sep 17 00:00:00 2001 From: Oni Boni Date: Sat, 27 Aug 2022 20:26:00 +0200 Subject: [PATCH] Adds explanation on how to fix cgreen meson build. --- subprojects/packagefiles/cgreen/meson.build | 27 +++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/subprojects/packagefiles/cgreen/meson.build b/subprojects/packagefiles/cgreen/meson.build index f29afc6..307c03f 100644 --- a/subprojects/packagefiles/cgreen/meson.build +++ b/subprojects/packagefiles/cgreen/meson.build @@ -1,3 +1,30 @@ +# Most of the setup is copy&paste, how to reproduce (the hard way..): +# 0. try to use `cgreen` as normal `cmake` subproject +# 1. add bare git-wrap for cgreen -> `subprojects/cgreen.wrap`: +# > [wrap-git] +# > url = https://github.com/cgreen-devs/cgreen.git +# > revision = master +# > depth = 1 +# 2. in `/meson.build`, add normal cmake subproject setup: +# > cmake = import('cmake') +# > cgreen = cmake.subproject('cgreen') +# > # you may want to lookup available targets before +# > message('CMaket targets:\n - ' + '\n - '.join(cgreen.target_list())) +# > cgreen_dep = cgreen.dependency('cgreen_shared') +# > cgreen_runner_dep = cgreen.dependency('cgreen_runner') +# 3. compile with meson (`meson compile -C `) +# 4. look up generated meson.build in `/subprojects/cgreen/meson.build` +# 5. copy & paste into subprojects/packagefiles +# a. add meson overrides for wanted dependencies: +# > meson.override_dependency('cgreen', cgreen_shared_dep) +# > meson.override_find_program('cgreen-runner', cgreen_runner) +# b. remove all other generated targets +# 6. fix the errors you faced before :) +# a. remove redundant `FILENAME` defines +# b. checkout how `config.h` is generated (see `subprojects/cgreen/config.h.cmake`) +# c. apply that to [meson setup](https://mesonbuild.com/Configuration.html) +# or create a minimal working substitute ;) -> see below (:30-35) + project('cgreen', 'c', 'cpp') configure_file(