Skip to content
Snippets Groups Projects
Commit 83269358 authored by Dominik Loidolt's avatar Dominik Loidolt
Browse files

Merge branch 'fix_build_system' into 'master'

Fix some build system related issues

See merge request !18
parents 04e8205a 6b7db4c0
No related branches found
No related tags found
1 merge request!18Fix some build system related issues
...@@ -3,12 +3,15 @@ ...@@ -3,12 +3,15 @@
cmp_tool cmp_tool
!test/cmp_tool !test/cmp_tool
#cmp_tool files # cmp_tool files
*.cfg *.cfg
*.info *.info
*.dat *.dat
*.cmp *.cmp
# Meson subprojects
/subprojects/*
!/subprojects/*.wrap
### C ### ### C ###
# Prerequisites # Prerequisites
......
...@@ -65,18 +65,18 @@ Unfortunately, the cmp\_tool does not support the Microsoft MSVC compiler. To bu ...@@ -65,18 +65,18 @@ Unfortunately, the cmp\_tool does not support the Microsoft MSVC compiler. To bu
For this, you need the [Mingw-w64 toolchain](https://www.mingw-w64.org/downloads/). To compile on Windows, do this in the Cygwin64 Terminal: For this, you need the [Mingw-w64 toolchain](https://www.mingw-w64.org/downloads/). To compile on Windows, do this in the Cygwin64 Terminal:
``` ```
meson setup buiddir_win --native-file=mingw-w64-64.txt meson setup builddir_win --native-file=mingw-w64-64.txt
cd buiddir_win cd builddir_win
meson compile meson compile cmp_tool
``` ```
### Cross-compile for Windows ### Cross-compile for Windows
Cross-compile for Windows is also possible with the [Mingw-w64 toolchain](https://www.mingw-w64.org/downloads/). To cross-compile for Windows use the following commands: Cross-compile for Windows is also possible with the [Mingw-w64 toolchain](https://www.mingw-w64.org/downloads/). To cross-compile for Windows use the following commands:
``` ```
meson setup buiddir_cross_win --cross-file=mingw-w64-64.txt meson setup builddir_cross_win --cross-file=mingw-w64-64.txt
cd buiddir_cross_win cd builddir_cross_win
meson compile meson compile cmp_tool
``` ```
## Tests ## Tests
......
...@@ -1321,9 +1321,9 @@ HTML_STYLESHEET = ...@@ -1321,9 +1321,9 @@ HTML_STYLESHEET =
# list). For an example see the documentation. # list). For an example see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_STYLESHEET = @DOXYDIR@/doxygen-awesome-css/doxygen-awesome.css \ HTML_EXTRA_STYLESHEET = @AWESOMEDIR@/doxygen-awesome.css \
@DOXYDIR@/doxygen-awesome-css/doxygen-awesome-sidebar-only.css \ @AWESOMEDIR@/doxygen-awesome-sidebar-only.css \
@DOXYDIR@/doxygen-awesome-css/doxygen-awesome-sidebar-only-darkmode-toggle.css @AWESOMEDIR@/doxygen-awesome-sidebar-only-darkmode-toggle.css
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note # other source files which should be copied to the HTML output directory. Note
...@@ -1333,9 +1333,9 @@ HTML_EXTRA_STYLESHEET = @DOXYDIR@/doxygen-awesome-css/doxygen-awesome.css \ ...@@ -1333,9 +1333,9 @@ HTML_EXTRA_STYLESHEET = @DOXYDIR@/doxygen-awesome-css/doxygen-awesome.css \
# files will be copied as-is; there are no commands or markers available. # files will be copied as-is; there are no commands or markers available.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_FILES = @DOXYDIR@/doxygen-awesome-css/doxygen-awesome-darkmode-toggle.js \ HTML_EXTRA_FILES = @AWESOMEDIR@/doxygen-awesome-darkmode-toggle.js \
@DOXYDIR@/doxygen-awesome-css/doxygen-awesome-fragment-copy-button.js \ @AWESOMEDIR@/doxygen-awesome-fragment-copy-button.js \
@DOXYDIR@/doxygen-awesome-css/doxygen-awesome-interactive-toc.js @AWESOMEDIR@/doxygen-awesome-interactive-toc.js
# The HTML_COLORSTYLE tag can be used to specify if the generated HTML output # The HTML_COLORSTYLE tag can be used to specify if the generated HTML output
......
...@@ -2,23 +2,21 @@ Doxyfile_template = files('Doxyfile.in') ...@@ -2,23 +2,21 @@ Doxyfile_template = files('Doxyfile.in')
doc_layout_files = files( doc_layout_files = files(
'header.html', 'header.html',
'meson.build', 'plato-logo-med.png'
'plato-logo-med.png',
'doxygen-awesome-css/doxygen-awesome-darkmode-toggle.js',
'doxygen-awesome-css/doxygen-awesome-fragment-copy-button.js',
'doxygen-awesome-css/doxygen-awesome-interactive-toc.js',
'doxygen-awesome-css/doxygen-awesome-paragraph-link.js',
'doxygen-awesome-css/doxygen-awesome-sidebar-only-darkmode-toggle.css',
'doxygen-awesome-css/doxygen-awesome-sidebar-only.css',
'doxygen-awesome-css/doxygen-awesome.css',
) )
doxygen_awesome_css_proj = subproject('doxygen-awesome-css')
doxygen_awesome_css_files = doxygen_awesome_css_proj.get_variable('doxygen_awesome_files')
doxygen_awesome_css_dep = doxygen_awesome_css_proj.get_variable('doxygen_awesome_css_dep')
doxygen_awesome_dir = doxygen_awesome_css_dep.get_variable(internal : 'doxygen_awesome_dir')
message(doxygen_awesome_dir)
#Build a Doxyfile based on Doxyfile.in #Build a Doxyfile based on Doxyfile.in
cdata_doc = configuration_data() cdata_doc = configuration_data()
cdata_doc.set('VERSION', meson.project_version()) cdata_doc.set('VERSION', meson.project_version())
cdata_doc.set('SRCDIR', meson.project_source_root()) cdata_doc.set('SRCDIR', meson.project_source_root())
cdata_doc.set('DOXYDIR', meson.current_source_dir()) cdata_doc.set('DOXYDIR', meson.current_source_dir())
cdata_doc.set('AWESOMEDIR', doxygen_awesome_dir)
cdata_doc.set('BUILDDIR', meson.project_build_root()) cdata_doc.set('BUILDDIR', meson.project_build_root())
if find_program('dot', required : false).found() if find_program('dot', required : false).found()
cdata_doc.set('HAVE_DOT', 'YES') cdata_doc.set('HAVE_DOT', 'YES')
...@@ -39,7 +37,7 @@ if doxygen.found() ...@@ -39,7 +37,7 @@ if doxygen.found()
custom_target('doc', custom_target('doc',
input : doxy_file, input : doxy_file,
output : 'generated_documentation', output : 'generated_documentation',
depend_files : [doxy_file, doc_layout_files, main, cmplib_sources], # test files are missing depend_files : [doxy_file, doc_layout_files, doxygen_awesome_css_files, main, cmplib_sources], # test files are missing
command : [doxygen, '@INPUT@'], command : [doxygen, '@INPUT@'],
build_by_default : false, build_by_default : false,
console : true, console : true,
......
[wrap-file]
directory = doxygen-awesome-css-2.2.0
source_url = https://github.com/jothepro/doxygen-awesome-css/archive/refs/tags/v2.2.0.tar.gz
source_filename = doxygen-awesome-css-2.5.2.tar.gz
source_hash = d3d55d91b3609c60e57d34a0fcdc37c67eeba535495511fba2b7d981da531793
patch_directory = doxygen-awesome-css
[provide]
doxygen-awesome-css = doxygen_awesome_css_dep
project('doxygen-awesome-css',
version: '2.2.0',
meson_version: '>=0.54.0',
license: 'MIT',
)
# Files to be installed
doxygen_awesome_files= files(
'doxygen-awesome-darkmode-toggle.js',
'doxygen-awesome-fragment-copy-button.js',
'doxygen-awesome-interactive-toc.js',
'doxygen-awesome-paragraph-link.js',
'doxygen-awesome-sidebar-only-darkmode-toggle.css',
'doxygen-awesome-sidebar-only.css',
'doxygen-awesome.css'
)
doxygen_awesome_css_dep = declare_dependency(
sources : doxygen_awesome_files,
variables : {'doxygen_awesome_dir': meson.current_source_dir(), 'number': '3'}
)
...@@ -15,7 +15,7 @@ endif ...@@ -15,7 +15,7 @@ endif
cppcheck = find_program('cppcheck', required : false) cppcheck = find_program('cppcheck', required : false)
if cppcheck.found() if cppcheck.found()
cppcheck_args = [ cppcheck_args = [
'--project=' + join_paths(meson.build_root(), 'compile_commands.json'), '--project=' + join_paths(meson.project_build_root(), 'compile_commands.json'),
# '--clang', # '--clang',
'--cppcheck-build-dir='+meson.current_build_dir(), '--cppcheck-build-dir='+meson.current_build_dir(),
'--std=c89', '--std=c89',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment