Adds explanation on how to fix cgreen meson build.

main
oniboni 2022-08-27 20:26:00 +02:00
parent fd1938a16c
commit cf3ecdcb68
Signed by: oniboni
GPG Key ID: 11E6EDEFD248BB50
1 changed files with 27 additions and 0 deletions

View File

@ -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 `<project_root>/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 <builddir>`)
# 4. look up generated meson.build in `<builddir>/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(