diff options
| author | William Deegan <bill@baddogconsulting.com> | 2015-09-21 17:03:12 (GMT) |
|---|---|---|
| committer | William Deegan <bill@baddogconsulting.com> | 2015-09-21 17:03:12 (GMT) |
| commit | 0941093e0e5a030faa49968457638a3a6aee7ad8 (patch) | |
| tree | 6d33513c14eb6eac0531dd050de0ecca4c39bd79 /test/D/HSTeoh/LinkingProblem | |
| download | SCons-2.4.0.zip SCons-2.4.0.tar.gz SCons-2.4.0.tar.bz2 | |
release 2.4.02.4.0
Diffstat (limited to 'test/D/HSTeoh/LinkingProblem')
| -rw-r--r-- | test/D/HSTeoh/LinkingProblem/SConstruct_template | 21 | ||||
| -rw-r--r-- | test/D/HSTeoh/LinkingProblem/cprog.c | 7 | ||||
| -rw-r--r-- | test/D/HSTeoh/LinkingProblem/ncurs_impl.c | 13 | ||||
| -rw-r--r-- | test/D/HSTeoh/LinkingProblem/prog.d | 13 |
4 files changed, 54 insertions, 0 deletions
diff --git a/test/D/HSTeoh/LinkingProblem/SConstruct_template b/test/D/HSTeoh/LinkingProblem/SConstruct_template new file mode 100644 index 0000000..2c53b54 --- /dev/null +++ b/test/D/HSTeoh/LinkingProblem/SConstruct_template @@ -0,0 +1,21 @@ +# -*- mode:python; coding=utf-8; -*- + +import os + +environment = Environment( + tools = ['cc', '{}', 'link'], + LIBS = ['ncurses']) + +environment['ENV']['HOME'] = os.environ['HOME'] # Hack for gdmd + +environment.Object('ncurs_impl.o', 'ncurs_impl.c') + +environment.Program('prog', Split(""" + prog.d + ncurs_impl.o +""")) + +environment.Program('cprog', Split(""" + cprog.c + ncurs_impl.o +""")) diff --git a/test/D/HSTeoh/LinkingProblem/cprog.c b/test/D/HSTeoh/LinkingProblem/cprog.c new file mode 100644 index 0000000..674fd96 --- /dev/null +++ b/test/D/HSTeoh/LinkingProblem/cprog.c @@ -0,0 +1,7 @@ +extern void ncurs_init(); +extern void ncurs_cleanup(); + +int main() { + ncurs_init(); + ncurs_cleanup(); +} diff --git a/test/D/HSTeoh/LinkingProblem/ncurs_impl.c b/test/D/HSTeoh/LinkingProblem/ncurs_impl.c new file mode 100644 index 0000000..3ca6dd3 --- /dev/null +++ b/test/D/HSTeoh/LinkingProblem/ncurs_impl.c @@ -0,0 +1,13 @@ +/* Ncurses wrappers */ +#include <ncurses.h> + +void ncurs_init() { + initscr(); + cbreak(); + noecho(); + keypad(stdscr, TRUE); +} + +void ncurs_cleanup() { + endwin(); +} diff --git a/test/D/HSTeoh/LinkingProblem/prog.d b/test/D/HSTeoh/LinkingProblem/prog.d new file mode 100644 index 0000000..1337210 --- /dev/null +++ b/test/D/HSTeoh/LinkingProblem/prog.d @@ -0,0 +1,13 @@ +/* + * Simple D program that links to ncurses via a C wrapping file. + */ + +extern(C) { + void ncurs_init(); + void ncurs_cleanup(); +} + +void main() { + ncurs_init(); + ncurs_cleanup(); +} |
