summaryrefslogtreecommitdiffstats
path: root/filesystem/fat_ramdisk/wscript
blob: 51ff70cc67b525f306036aef974b84c7acc8419d (plain) (blame)
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
# Copyright 2013 Gedare Bloom (gedare@rtems.org)
#
# This file's license is 2-clause BSD as in this distribution's LICENSE.2 file.
#

# Waf build script for RTEMS fat_ramdisk

import rtems_waf.rtems as rtems
version = "1.0.0"

## FilesystemImage processing
from waflib.Task import Task
from waflib.TaskGen import extension
class bin2c(Task):
  run_str = '${RTEMS_BIN2C} ${SRC} ${TGT[0].abspath()} && ' + \
            'touch ${TGT[1].abspath()}'
  ext_out = ['.h']

@extension('FilesystemImage')
def process_FilesystemImage(self, node):
  c_node = node.change_ext('.c')
  h_node = node.change_ext('.h')
  self.create_task('bin2c', node, [c_node, h_node])
  self.source.append(c_node)

def build(bld):
    rtems.build(bld)

    arch_bsp = bld.get_env()['RTEMS_ARCH_BSP']
    arch = bld.get_env()['RTEMS_ARCH']
    bsp = bld.get_env()['RTEMS_BSP']
    cflags = bld.get_env()['CFLAGS']

    #
    # The include paths and defines.
    #
    bld.includes = ['.']
    bld.defines = ['PACKAGE_VERSION="' + version + '"']
    bld(rule='tar -C ' + bld.path.find_dir('rootfs').abspath() + \
              ' -cf ${TGT} .',
        target='FilesystemImage')

    bld(features = 'c cprogram',
        target = 'fat_ramdisk.exe',
        includes = bld.includes,
        defines = bld.defines,
        cflags = cflags,
        source = 'init.c FilesystemImage')