_LIBS := $(filter -l%,$(LDFLAGS))
_LIBS := $(patsubst -l%,$(OUTPUTDIR)Libs/lib%.so,$(_LIBS))
+ifeq ($(ARCHDIR),native)
+ LIBS := $(patsubst -lc,-lc_acess,$(LIBS))
+ LIBS := $(patsubst -lc++,-lc++_acess,$(LIBS))
+ ifneq ($(BIN),libc_acess.so)
+ LIBS += -lc_acess
+ endif
+endif
+
OBJ := $(addprefix $(_OBJPREFIX),$(OBJ))
UTESTS := $(patsubst TEST_%.c,%,$(wildcard TEST_*.c))
V := @
endif
-.PHONY: all clean install postbuild
+.PHONY: all clean install postbuild utest-build utest-run generate_exp
all: _libs $(_BIN) $(_XBIN)
_libs: $(HEADERS)
../../include/%: include_exp/%
+ @echo [LN] $@
@mkdir -p $(dir $@)
@ln -s $(shell pwd)/$< $@
utest: utest-build utest-run
-generate_exp: $(UTESTS:%=EXP_%.txt)
- @echo > /dev/null
+utest-build: _ $(UTESTS:%=TEST_%)
-utest-build: $(UTESTS:%=TEST_%)
- @echo > /dev/null
+utest-run: _ $(UTESTS:%=runtest-%)
-utest-run: $(UTESTS:%=runtest-%)
- @echo > /dev/null
+_:
+ @true
-$(UTESTS:%=runtest-%): runtest-%: TEST_% EXP_%.txt
+$(UTESTS:%=runtest-%): runtest-%: TEST_%
@echo --- [TEST] $*
- @./TEST_$* | diff EXP_$*.txt -
+ @./TEST_$*
clean:
$(RM) $(_BIN) $(_XBIN) $(OBJ) $(_BIN).dsm $(DEPFILES) $(EXTRACLEAN)
#endif
LINK_OBJS = $(PRELINK) $(OBJ)
-$(_BIN): $(LINK_OBJS)
+$(_BIN): $(CRTI) $(LINK_OBJS) $(CRTN) $(CRT0S)
@mkdir -p $(dir $(_BIN))
@echo [LD] -o $(BIN) $(OBJ)
ifneq ($(USE_CXX_LINK),)
obj-native/%.no: %.c
@mkdir -p $(dir $@)
@echo [CC Native] -o $@
- @$(NCC) -g -c $< -o $@ -Wall -std=gnu99 -MD -MP -MF
[email protected] '-D_SysDebug(f,v...)=fprintf(stderr,"DEBUG "f"\n",##v)' -include stdio.h
+ @$(NCC) -g -c $< -o $@ -Wall -std=gnu99 -MD -MP -MF
[email protected] '-D_SysDebug(f,v...)=fprintf(stderr,"DEBUG "f"\n",##v)' -include stdio.h
-I $(ACESSDIR)/Usermode/Libraries/_utest_include/
TEST_%: obj-native/TEST_%.no obj-native/%.no
@echo [CC Native] -o $@