From af403570f54ea186ea1649b9f286bba541c3889e Mon Sep 17 00:00:00 2001 From: Robert Izzard <r.izzard@surrey.ac.uk> Date: Tue, 17 Dec 2019 08:19:31 +0000 Subject: [PATCH] more changes to try to build data objects with meson --- meson.build | 9 ++++----- meson/make_data_object.sh | 23 +++++++++++++++-------- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/meson.build b/meson.build index 84e99cb2a..a44dc0337 100644 --- a/meson.build +++ b/meson.build @@ -873,14 +873,12 @@ if 1 == 1 else + # get data objects source (.h) files data_object_sourcefiles = run_command('meson/data_object_list_files.sh') - if data_object_sourcefiles.returncode() != 0 error('There was a problem identifying the data object source file.') endif - - # get data objects source (.h) files - data_objects_source = run_command('meson/data_object_list_files.sh').stdout().strip().split(' ') + data_objects_source = data_object_sourcefiles.stdout().strip().split(' ') # list data objects (.o) files data_objects_files = run_command('meson/make_data_object.sh', @@ -894,11 +892,12 @@ else data_objects_source, ], command: [ - 'meson/make_data_object.sh', + '../meson/make_data_object.sh', 'build', '@INPUT@', ], output: [ + 'pants' ], ) diff --git a/meson/make_data_object.sh b/meson/make_data_object.sh index 5a6374847..6535fd480 100755 --- a/meson/make_data_object.sh +++ b/meson/make_data_object.sh @@ -17,22 +17,28 @@ DBUILT="false" COMMAND=$1 shift +SRCPREFIX=".." + for HFILE in "$@"; do - TMPFILE=$(printf "%s" "$HFILE" | sed s/\.h$/.tmp/) + TMPFILE=$(printf "%s" "$HFILE" | sed s/\.h$/.tmp/ | sed s/\\//_/g) OBJFILE=$(printf "%s/%s" "${MESON_BUILD_ROOT}" "$HFILE" | sed s/\.h$/.o/ | sed s/\\//_/g) - #echo "H $HFILE" - #echo "T $TMPFILE" - #echo "O $OBJFILE" - + echo "H $HFILE" + ls -l $SRCPREFIX/$HFILE + echo "T $TMPFILE" + echo "O $OBJFILE" + if [ "$COMMAND" = "build" ] ; then - if [ "$HFILE" -nt "$OBJFILE" ] ; then + echo "Do build" + if [ "$SRCPREFIX/$HFILE" -nt "$OBJFILE" ] ; then + echo "Require objfile ($DBUILT)" if [ "$DBUILT" = true ]; then + echo "Build double2bin" # first time, build double2bin - $CC double2bin.c -o ./double2bin + $CC ../double2bin.c -o ./double2bin fi - tr , ' ' < "$HFILE" | sed s/\\\\// | grep -v define |grep -v "\\*" | ./double2bin > "$TMPFILE" + tr , ' ' < "$SRCPREFIX/$HFILE" | sed s/\\\\// | grep -v define |grep -v "\\*" | ./double2bin > "$TMPFILE" objcopy $OBJCOPY_OPTS $OBJCOPY_SUBOPTS "$TMPFILE" "$OBJFILE" rm "$TMPFILE" DBUILT=true @@ -42,6 +48,7 @@ for HFILE in "$@"; do echo -n "$OBJFILE " #ls -l $OBJFILE #echo + done echo -- GitLab