Changes in uspace/Makefile.common [af0a2c7:865b981] in mainline


Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/Makefile.common

    raf0a2c7 r865b981  
    7878        JOB = $(BINARY).job
    7979        OUTPUT = $(BINARY)
     80        TEST_BINARY = test-$(BINARY)
    8081        EXTRA_OUTPUT += $(BINARY).disasm
    8182        EXTRA_CLEAN += $(BINARY).map
     
    8586        JOB = $(LIBRARY).job
    8687        OUTPUT = $(LIBRARY).a
     88        TEST_BINARY = test-$(LIBRARY)
    8789endif
    8890
     
    200202endif
    201203
     204# PCUT-based unit tests
     205ifneq ($(TEST_SOURCES),)
     206        TEST_OUTPUT = $(TEST_BINARY)
     207        TEST_CFLAGS = -I$(LIB_PREFIX)/pcut/include -D__helenos__
     208        TEST_OUTPUT_LIBS = $(LIB_PREFIX)/pcut/libpcut.a
     209        EXTRA_CLEAN += $(TEST_OUTPUT) $(TEST_OUTPUT).map
     210ifneq ($(LIBRARY),)
     211        TEST_OUTPUT_LIBS += $(OUTPUT)
     212endif
     213        TEST_OUTPUT_LIBS += $(TEST_LIBS)
     214endif
     215
    202216.PHONY: all clean
    203217
    204218all: $(VERSION_DEF) $(COMMON_MAKEFILE) $(CONFIG_MAKEFILE) $(CONFIG_HEADER) $(LIBS) $(OUTPUT) $(LOUTPUT) $(EXTRA_OUTPUT)
    205219        -[ -f $(DEPEND) ] && cp -a $(DEPEND) $(DEPEND_PREV)
     220
     221all-test: $(TEST_OUTPUT)
    206222
    207223clean:
     
    294310OBJECTS := $(addsuffix .o,$(basename $(SOURCES)))
    295311LOBJECTS := $(addsuffix .lo,$(basename $(SOURCES)))
     312TEST_OBJECTS := $(addsuffix .test.o,$(basename $(TEST_SOURCES)))
    296313
    297314ifneq ($(BINARY),)
     
    338355endif
    339356
     357ifneq ($(TEST_OUTPUT),)
     358$(TEST_OUTPUT): $(LINKER_SCRIPT) $(TEST_OBJECTS) $(TEST_OUTPUT_LIBS)
     359        $(LD) -n $(LFLAGS) -T $(LINKER_SCRIPT) -M -Map $(TEST_OUTPUT).map -o $@ $(TEST_OBJECTS) $(TEST_OUTPUT_LIBS) $(LIBS) $(BASE_LIBS)
     360ifeq ($(CONFIG_STRIP_BINARIES),y)
     361        $(STRIP) $(TEST_OUTPUT)
     362endif
     363endif
     364
    340365%.o: %.S $(DEPEND)
    341366        $(GCC) $(DEFS) $(GCC_CFLAGS) -D__ASM__ -c $< -o $@
     
    356381endif
    357382
     383%.test.o: %.c $(DEPEND)
     384        $(CC) $(DEFS) $(CFLAGS) $(TEST_CFLAGS) -c $< -o $@
     385ifeq ($(PRECHECK),y)
     386        $(JOBFILE) $(JOB) $< $@ cc core $(DEFS) $(CFLAGS)
     387endif
     388
    358389%.lo: %.S $(DEPEND)
    359390        $(CC) $(DEFS) $(LIB_CFLAGS) -D__ASM__ -c $< -o $@
     
    375406
    376407$(DEPEND): $(PRE_DEPEND)
    377         makedepend -f - -- $(DEPEND_DEFS) $(CFLAGS) -- $(SOURCES) > $@ 2> /dev/null
     408        makedepend -f - -- $(DEPEND_DEFS) $(CFLAGS) -- $(SOURCES) $(TEST_SOURCES) > $@ 2> /dev/null
    378409        -[ -f $(DEPEND_PREV) ] && diff -q $(DEPEND_PREV) $@ && mv -f $(DEPEND_PREV) $@
    379410
Note: See TracChangeset for help on using the changeset viewer.