summaryrefslogtreecommitdiff
path: root/bsps/shared/wscript
diff options
context:
space:
mode:
Diffstat (limited to 'bsps/shared/wscript')
-rw-r--r--bsps/shared/wscript137
1 files changed, 137 insertions, 0 deletions
diff --git a/bsps/shared/wscript b/bsps/shared/wscript
new file mode 100644
index 0000000000..13695b6d49
--- /dev/null
+++ b/bsps/shared/wscript
@@ -0,0 +1,137 @@
+from imp import new_module
+from os.path import basename
+
+
+def build(ctx):
+ source = []
+
+ # Nothing below this will work on the host.
+ if ctx.variant == "host":
+ return
+
+ # version.c
+ source_version = ["rtems-version.c"]
+ ctx.bsp.source(
+ source_version,
+ alias="version",
+ features="src_include src_include_rtems src_include_score",
+ cflags=[
+ "-DRTEMS_VERSION=\"%s\"" % ctx.env.RTEMS_VERSION
+ ]
+ )
+
+ source += [
+ "cache/nocache.c",
+ "dev/display/disp_hcms29xx.c",
+ "dev/display/font_hcms29xx.c",
+ "dev/flash/am29lv160.c",
+ "dev/getentropy/getentropy-cpucounter.c",
+ "dev/i2c/i2c-2b-eeprom.c",
+ "dev/i2c/i2c-ds1621.c",
+ "dev/i2c/i2c-sc620.c",
+ "dev/i2c/spi-flash-m25p40.c",
+ "dev/i2c/spi-fram-fm25l256.c",
+ "dev/i2c/spi-memdrv.c",
+ "dev/i2c/spi-sd-card.c",
+ "dev/ide/ata.c",
+ "dev/ide/ata_util.c",
+ "dev/ide/ide_controller.c",
+ "dev/rtc/ds1375.c",
+ "dev/rtc/icm7170.c",
+ "dev/rtc/icm7170_reg.c",
+ "dev/rtc/icm7170_reg2.c",
+ "dev/rtc/icm7170_reg4.c",
+ "dev/rtc/icm7170_reg8.c",
+ "dev/rtc/m48t08.c",
+ "dev/rtc/m48t08_reg.c",
+ "dev/rtc/m48t08_reg2.c",
+ "dev/rtc/m48t08_reg4.c",
+ "dev/rtc/m48t08_reg8.c",
+ "dev/rtc/mc146818a.c",
+ "dev/rtc/mc146818a_ioreg.c",
+ "dev/rtc/rtcprobe.c",
+ "dev/serial/legacy-console-control.c",
+ "dev/serial/legacy-console-select.c",
+ "dev/serial/legacy-console.c",
+ "dev/serial/mc68681.c",
+ "dev/serial/mc68681_baud.c",
+ "dev/serial/mc68681_reg.c",
+ "dev/serial/mc68681_reg2.c",
+ "dev/serial/mc68681_reg4.c",
+ "dev/serial/mc68681_reg8.c",
+ "dev/serial/ns16550-context.c",
+ "dev/serial/ns16550.c",
+ "dev/serial/serprobe.c",
+ "dev/serial/z85c30.c",
+ "dev/serial/z85c30_reg.c",
+ "irq/irq-default-handler.c",
+ "irq/irq-generic.c",
+ "irq/irq-info.c",
+ "irq/irq-legacy.c",
+ "irq/irq-lock.c",
+ "irq/irq-server.c",
+ "irq/irq-shell.c",
+ "net/cs8900.c",
+ "net/dec21140.c",
+ "net/elnk.c",
+ "net/greth2.c",
+ "net/i82586.c",
+ "net/if_dc.c",
+ "net/if_fxp.c",
+ "net/open_eth.c",
+ "net/smc91111.c",
+ "net/sonic.c",
+ "start/bootcard.c",
+ "start/bspreset-empty.c",
+ "start/bspfatal-default.c",
+ "start/sbrk.c"
+ ]
+
+ ctx.bsp.source(
+ source,
+ features = "src_include src_include_rtems src_include_networking src_include_score src_include_bsp_common src_include_bsp src_include_bsp_arch",
+# includes = ["%s/bsps/%s/%s/include/" % (ctx.srcnode.abspath(), ctx.env.RTEMS_ARCH, ctx.env.RTEMS_BSP)]
+ )
+
+
+
+
+
+
+"""
+ # Open the correct sub-wscript and execute build() as waf does not support
+ # loading arbitrary wscripts.
+ path = "%s/c/" % ctx.srcnode.abspath()
+ with open("%s/wscript_%s" % (path, ctx.env.RTEMS_ARCH), "r") as fp:
+ module = new_module("RTEMS_MODULE")
+ exec(compile(fp.read(), "%swscript_%s" % (path, ctx.env.RTEMS_ARCH), "exec"), module.__dict__)
+ module.build(ctx)
+
+ ctx(
+ target = "rtemsbsp",
+ use = [
+ "auto_libbsp_objects"
+ ],
+ includes = ["%s/include/libchip" % ctx.srcnode.abspath()],
+ features = "c cstlib",
+ install_path = ctx.env.LIBDIR
+ )
+
+ # First file is always installed as "linkcmds"
+ # XXX: This needs to be removed eventually by fixing the filenames.
+ if ctx.env.LINKCMDS:
+ ctx.copy_or_subst(
+ ctx.env.LINKCMDS[0],
+ "linkcmds",
+ "linkcmds_linkcmds"
+ )
+
+ for file in ctx.env.LINKCMDS[1:]:
+ base = basename(file)
+ ctx.copy_or_subst(
+ file,
+ base,
+ "linkcmds_base"
+ )
+
+"""