blob: 601337db7ace83fda48ca5e7126a524254bfd7b4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#!/bin/sh
input="$1"
base="$2"
# assembly (used to compile data with custom symbol name)
cat << EOF > "$base.s"
.section .rodata
.global ${base}_head
${base}_head:
.incbin "$input"
EOF
# C header
cat << EOF > "$base.h"
#pragma once
// NOTE: THIS FILE IS GENERATED, DO NOT EDIT
#include <stddef.h>
extern const char ${base}_head;
static const char* ${base} = &${base}_head;
static const size_t ${base}_size = $(wc -c < "$input");
EOF
|