Add chaz_CC_add_include_dir
Project: http://git-wip-us.apache.org/repos/asf/lucy/repo Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/5622ba31 Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/5622ba31 Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/5622ba31 Branch: refs/heads/c-bindings-cfc Commit: 5622ba319c4a90f24ccc2cdc8ac0a0e49fa461c6 Parents: cf67dd8 Author: Nick Wellnhofer <[email protected]> Authored: Sun Feb 10 21:54:09 2013 +0100 Committer: Nick Wellnhofer <[email protected]> Committed: Sun Feb 10 21:54:09 2013 +0100 ---------------------------------------------------------------------- charmonizer/src/Charmonizer/Core/Compiler.c | 9 +++++++++ charmonizer/src/Charmonizer/Core/Compiler.h | 5 +++++ clownfish/compiler/common/charmonizer.main | 7 ++++--- 3 files changed, 18 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucy/blob/5622ba31/charmonizer/src/Charmonizer/Core/Compiler.c ---------------------------------------------------------------------- diff --git a/charmonizer/src/Charmonizer/Core/Compiler.c b/charmonizer/src/Charmonizer/Core/Compiler.c index 440afdf..28342ab 100644 --- a/charmonizer/src/Charmonizer/Core/Compiler.c +++ b/charmonizer/src/Charmonizer/Core/Compiler.c @@ -342,6 +342,15 @@ chaz_CC_add_extra_cflags(const char *flags) { } } +void +chaz_CC_add_include_dir(const char *dir) { + size_t size = strlen(chaz_CC.include_flag) + strlen(dir) + 1; + char *flag = (char*)malloc(size); + sprintf(flag, "%s%s", chaz_CC.include_flag, dir); + chaz_CC_add_extra_cflags(flag); + free(flag); +} + const char* chaz_CC_get_cc(void) { return chaz_CC.cc_command; http://git-wip-us.apache.org/repos/asf/lucy/blob/5622ba31/charmonizer/src/Charmonizer/Core/Compiler.h ---------------------------------------------------------------------- diff --git a/charmonizer/src/Charmonizer/Core/Compiler.h b/charmonizer/src/Charmonizer/Core/Compiler.h index 2f03178..318ff62 100644 --- a/charmonizer/src/Charmonizer/Core/Compiler.h +++ b/charmonizer/src/Charmonizer/Core/Compiler.h @@ -74,6 +74,11 @@ chaz_CC_set_warnings_as_errors(const int flag); void chaz_CC_add_extra_cflags(const char *); +/* Add include dir to extra cflags. + */ +void +chaz_CC_add_include_dir(const char *dir); + /* Accessor for the compiler executable's string representation. */ const char* http://git-wip-us.apache.org/repos/asf/lucy/blob/5622ba31/clownfish/compiler/common/charmonizer.main ---------------------------------------------------------------------- diff --git a/clownfish/compiler/common/charmonizer.main b/clownfish/compiler/common/charmonizer.main index 27ef71e..2dfb267 100644 --- a/clownfish/compiler/common/charmonizer.main +++ b/clownfish/compiler/common/charmonizer.main @@ -135,12 +135,13 @@ S_write_makefile() { chaz_MakeFile_add_var(makefile, "LEMON_EXE", "$(LEMON_DIR)" DIR_SEP "lemon$(EXE_EXT)"); + chaz_CC_add_include_dir("."); + chaz_CC_add_include_dir("$(INCLUDE_DIR)"); + chaz_CC_add_include_dir("$(SRC_DIR)"); + var = chaz_MakeFile_add_var(makefile, "CFLAGS", NULL); chaz_MakeVar_append(var, chaz_CC_get_cflags()); chaz_MakeVar_append(var, chaz_CC_get_extra_cflags()); - chaz_MakeVar_append(var, "-I."); - chaz_MakeVar_append(var, "-I$(INCLUDE_DIR)"); - chaz_MakeVar_append(var, "-I$(SRC_DIR)"); sfc.common_objs = chaz_MakeFile_add_var(makefile, "COMMON_OBJS", NULL); sfc.test_cfc_objs = chaz_MakeFile_add_var(makefile, "TEST_CFC_OBJS", NULL);
