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