summaryrefslogtreecommitdiff
path: root/main/SCsub
blob: aa9092ca5119490ba0034600ac4367e9948eb578 (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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#!/usr/bin/env python

Import('env')
from compat import byte_to_str


def make_splash(target, source, env):

    src = source[0].srcnode().abspath
    dst = target[0].srcnode().abspath

    with open(src, "rb") as f:
        buf = f.read()

    with open(dst, "w") as g:
        g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
        g.write("#ifndef BOOT_SPLASH_H\n")
        g.write("#define BOOT_SPLASH_H\n")
        g.write('static const Color boot_splash_bg_color = Color::html("#232323");\n')
        g.write("static const unsigned char boot_splash_png[] = {\n")
        for i in range(len(buf)):
            g.write(byte_to_str(buf[i]) + ",\n")
        g.write("};\n")
        g.write("#endif")


def make_splash_editor(target, source, env):

    src = source[0].srcnode().abspath
    dst = target[0].srcnode().abspath

    with open(src, "rb") as f:
        buf = f.read()

    with open(dst, "w") as g:
        g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
        g.write("#ifndef BOOT_SPLASH_EDITOR_H\n")
        g.write("#define BOOT_SPLASH_EDITOR_H\n")
        g.write('static const Color boot_splash_editor_bg_color = Color::html("#232323");\n')
        g.write("static const unsigned char boot_splash_editor_png[] = {\n")
        for i in range(len(buf)):
            g.write(byte_to_str(buf[i]) + ",\n")
        g.write("};\n")
        g.write("#endif")


def make_app_icon(target, source, env):

    src = source[0].srcnode().abspath
    dst = target[0].srcnode().abspath

    with open(src, "rb") as f:
        buf = f.read()

    with open(dst, "w") as g:
        g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
        g.write("#ifndef APP_ICON_H\n")
        g.write("#define APP_ICON_H\n")
        g.write("static const unsigned char app_icon_png[] = {\n")
        for i in range(len(buf)):
            g.write(byte_to_str(buf[i]) + ",\n")
        g.write("};\n")
        g.write("#endif")


env.main_sources = []
env.add_source_files(env.main_sources, "*.cpp")

Export('env')

env.Depends("#main/splash.gen.h", "#main/splash.png")
env.Command("#main/splash.gen.h", "#main/splash.png", make_splash)

env.Depends("#main/splash_editor.gen.h", "#main/splash_editor.png")
env.Command("#main/splash_editor.gen.h", "#main/splash_editor.png", make_splash_editor)

env.Depends("#main/app_icon.gen.h", "#main/app_icon.png")
env.Command("#main/app_icon.gen.h", "#main/app_icon.png", make_app_icon)

SConscript('tests/SCsub')

lib = env.add_library("main", env.main_sources)
env.Prepend(LIBS=[lib])