Please sign in to comment.
Tweak build system to allow out-of-tree projects.
It's very annoying to have to build libmaple projects in-tree. Users are just copying the repository everywhere. That's stupid. So I made this: https://github.com/mbolivar/example-libmaple-project It needs these patches to work. Add a header and footer for rules.mk files, so we can change them around and things will continue to work for the users, who just include them. In Makefile, add USER_MODULES to LIBMAPLE_MODULES if it's nonempty. This is the hook you use to get your code compiled and linked correctly. Hack build-targets.mk for stupid reasons I hope to fix later. For now, you'll need an empty main.cpp in BOTH the libmaple directory and your directory if you want things to work the way you'd expect. Signed-off-by: Marti Bolivar <firstname.lastname@example.org>
- Loading branch information...
Showing with 29 additions and 7 deletions.
|@@ -0,0 +1,18 @@|
|+sFILES_$(d) := $(sSRCS_$(d):%=$(d)/%)|
|+cFILES_$(d) := $(cSRCS_$(d):%=$(d)/%)|
|+cppFILES_$(d) := $(cppSRCS_$(d):%=$(d)/%)|
|+OBJS_$(d) := $(sFILES_$(d):%.S=$(BUILD_PATH)/%.o) \|
|+ $(cFILES_$(d):%.c=$(BUILD_PATH)/%.o) \|
|+DEPS_$(d) := $(OBJS_$(d):%.o=%.d)|
|+$(OBJS_$(d)): TGT_CFLAGS := $(CFLAGS_$(d))|
|+$(OBJS_$(d)): TGT_CXXFLAGS := $(CXXFLAGS_$(d))|
|+$(OBJS_$(d)): TGT_ASFLAGS := $(ASFLAGS_$(d))|
|+TGT_BIN += $(OBJS_$(d))|
|+d := $(dirstack_$(sp))|
|+sp := $(basename $(sp))|