Field embeds in filed "mariebuild/files" are not resolved properly #13

Closed
opened 2023-07-09 15:22:49 +02:00 by MarieEckert · 1 comment
MarieEckert commented 2023-07-09 15:22:49 +02:00 (Migrated from github.com)

When embedding a field in ".config/mariebuild/files", the field is not properly resolved for the finalization command.

Sample buildfile:

sector .config
  depends:
    includes 'include/'
    files    'butter/stack.c'

  mariebuild:
    name 'bs'
    cc 'gcc'

    std_flags '-Wall -I$(depends/includes)'
    debug_flags '-ggdb'
    release_flags '-O3'

    files '$(depends/files):bs.c:main.c'

    comp_cmd '$(cc) $(mode_flags) $(std_flags) -c -o out/$(file).o src/$(file)'
    finalize_cmd '$(cc) $(mode_flags) -o $(name) out/$(files).o'

Output:

> gcc -ggdb -Wall -Iinclude/ -c -o out/butter/stack.c.o src/butter/stack.c
>> gcc -ggdb -Wall -Iinclude/ -c -o out/bs.c.o src/bs.c
>> gcc -ggdb -Wall -Iinclude/ -c -o out/main.c.o src/main.c
>> gcc -ggdb -o bs out/$(depends/files).o out/bs.c.o out/main.c.o
sh: line 1: depends/files: No such file or directory
/usr/bin/ld: cannot find out/.o: No such file or directory
collect2: error: ld returned 1 exit status
!! Finalization Command returned non-zero exit code: 1
!! Build failed: An errror occured whilst finalizing! (0x20000005)
When embedding a field in ".config/mariebuild/files", the field is not properly resolved for the finalization command. Sample buildfile: ``` sector .config depends: includes 'include/' files 'butter/stack.c' mariebuild: name 'bs' cc 'gcc' std_flags '-Wall -I$(depends/includes)' debug_flags '-ggdb' release_flags '-O3' files '$(depends/files):bs.c:main.c' comp_cmd '$(cc) $(mode_flags) $(std_flags) -c -o out/$(file).o src/$(file)' finalize_cmd '$(cc) $(mode_flags) -o $(name) out/$(files).o' ``` Output: ``` > gcc -ggdb -Wall -Iinclude/ -c -o out/butter/stack.c.o src/butter/stack.c >> gcc -ggdb -Wall -Iinclude/ -c -o out/bs.c.o src/bs.c >> gcc -ggdb -Wall -Iinclude/ -c -o out/main.c.o src/main.c >> gcc -ggdb -o bs out/$(depends/files).o out/bs.c.o out/main.c.o sh: line 1: depends/files: No such file or directory /usr/bin/ld: cannot find out/.o: No such file or directory collect2: error: ld returned 1 exit status !! Finalization Command returned non-zero exit code: 1 !! Build failed: An errror occured whilst finalizing! (0x20000005) ```
MarieEckert commented 2023-07-09 21:54:02 +02:00 (Migrated from github.com)

Fixed with commit c14f72f

Fixed with commit [c14f72f](https://github.com/FelixEcker/mariebuild/commit/c14f72f88d0ee29041e812f3c810fe3f7b1db0be)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
marie/mariebuild#13
No description provided.