Changes in uspace/Makefile.common [6480827:874ed210] in mainline
- File:
-
- 1 edited
-
uspace/Makefile.common (modified) (11 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/Makefile.common
r6480827 r874ed210 46 46 # STATIC_NEEDED set to 'y' for init binaries, will build statically 47 47 # linked version 48 # STATIC_ONLY set to 'y' if binary cannot be linked dynamically49 # (e.g. uses thread-local variables)50 48 # 51 49 # Optionally, for a library: … … 111 109 START_FILES = $(LIBC_PREFIX)/crt0.o $(LIBC_PREFIX)/crt1.o 112 110 113 AFLAGS = --fatal-warnings114 111 LDFLAGS = -Wl,--fatal-warnings,--warn-common 112 113 STATIC_BUILD = n 115 114 116 115 ifeq ($(STATIC_NEEDED),y) 117 116 STATIC_BUILD = y 118 else 119 ifeq ($(STATIC_ONLY),y) 117 endif 118 119 ifneq ($(CONFIG_BUILD_SHARED_LIBS),y) 120 STATIC_BUILD = y 121 endif 122 123 ifneq ($(CONFIG_USE_SHARED_LIBS),y) 124 ifeq ($(LIBRARY),) 120 125 STATIC_BUILD = y 121 else122 ifeq ($(CONFIG_BUILD_SHARED_LIBS),y)123 ifeq ($(CONFIG_USE_SHARED_LIBS),y)124 STATIC_BUILD = n125 else126 ifeq ($(LIBRARY),)127 STATIC_BUILD = y128 else129 STATIC_BUILD = n130 endif131 endif132 else133 STATIC_BUILD = y134 endif135 126 endif 136 127 endif 137 128 138 ifneq ($(STATIC_BUILD),y) 139 LINK_DYNAMIC = y 129 # LINK_DYNAMIC is only here to allow app/dltest to link dynamically in otherwise static build. 130 ifeq ($(LINK_DYNAMIC),y) 131 STATIC_BUILD = n 132 endif 133 134 ifeq ($(STATIC_BUILD),y) 135 LDFLAGS += -static 140 136 endif 141 137 … … 152 148 BASE_LIBS += -lgcc 153 149 154 ifneq ($(LINK_DYNAMIC),y)155 LDFLAGS += -static156 endif157 158 150 INCLUDES_FLAGS = $(LIBC_INCLUDES_FLAGS) 159 151 … … 164 156 INCLUDES_FLAGS += $(foreach lib,$(LIBS), -I$(LIB_PREFIX)/$(lib) -I$(LIB_PREFIX)/$(lib)/include) 165 157 166 # TODO: get rid of this special case 167 ifneq ($(filter math, $(LIBS)),) 168 INCLUDES_FLAGS += $(LIBMATH_INCLUDES_FLAGS) 158 DEPLIBS := $(LIBS) 159 160 ifneq ($(filter %.cpp %.cc %.cxx, $(SOURCES)),) 161 ifneq ($(LIBRARY),libcpp) 162 DEPLIBS += cpp 163 endif 164 endif 165 166 ifneq ($(LIBRARY),libc) 167 DEPLIBS += c 169 168 endif 170 169 … … 194 193 -Werror-implicit-function-declaration \ 195 194 -Wsystem-headers \ 196 -Wunknown-pragmas 195 -Wunknown-pragmas \ 196 -Wa,--fatal-warnings 197 197 198 198 # XXX: -fno-builtin-strftime is for a seemingly spurious format warning. … … 296 296 297 297 LIB_CFLAGS = $(CFLAGS) -fPIC 298 LIB_CXXFLAGS = $(CXXFLAGS) -fPIC 298 299 LIB_LDFLAGS = $(LDFLAGS) -shared -Wl,-soname,$(LSONAME) -Wl,--no-undefined,--no-allow-shlib-undefined 299 300 AS_CFLAGS := $(addprefix -Xassembler ,$(AFLAGS))301 300 302 301 OBJECTS := $(addsuffix .o,$(basename $(SOURCES))) … … 305 304 DEPENDS := $(addsuffix .d,$(basename $(SOURCES))) $(addsuffix .test.d,$(basename $(TEST_SOURCES))) 306 305 307 LIBTAGS := $(foreach lib,$( LIBS), $(USPACE_PREFIX)/lib/$(lib)/tag)306 LIBTAGS := $(foreach lib,$(DEPLIBS), $(USPACE_PREFIX)/lib/$(lib)/tag) 308 307 LIBARGS := $(addprefix -L$(USPACE_PREFIX)/lib/, $(LIBS)) $(addprefix -l, $(LIBS)) 309 310 ifneq ($(LIBRARY),libc)311 LIBTAGS := $(LIBC_PREFIX)/tag $(LIBTAGS)312 endif313 308 314 309 .PHONY: all all-test clean fasterclean depend … … 339 334 deps.mk: Makefile 340 335 echo > $@.new 341 for lib in $( LIBS); do \336 for lib in $(DEPLIBS); do \ 342 337 echo "$(SELF_TARGET): lib/$$lib.build" >> $@.new; \ 343 338 done … … 389 384 390 385 %.o: %.S | depend 391 $(CC_JOB) -c -MD -MP $(DEFS) $(CFLAGS) $(EXTRA_CFLAGS) $(AS_CFLAGS)386 $(CC_JOB) -c -MD -MP $(DEFS) $(CFLAGS) $(EXTRA_CFLAGS) 392 387 393 388 %.o: %.s | depend 394 $(CC_JOB) -c -MD -MP $(DEFS) $(CFLAGS) $(EXTRA_CFLAGS) $(AS_CFLAGS)389 $(CC_JOB) -c -MD -MP $(DEFS) $(CFLAGS) $(EXTRA_CFLAGS) 395 390 396 391 %.o: %.c | depend … … 410 405 411 406 %.lo: %.S | depend 412 $(CC_JOB) -c -MD -MP $(DEFS) $(LIB_CFLAGS) $(EXTRA_CFLAGS) $(AS_CFLAGS)407 $(CC_JOB) -c -MD -MP $(DEFS) $(LIB_CFLAGS) $(EXTRA_CFLAGS) 413 408 414 409 %.lo: %.s | depend 415 $(CC_JOB) -c -MD -MP $(DEFS) $(LIB_CFLAGS) $(EXTRA_CFLAGS) $(AS_CFLAGS)410 $(CC_JOB) -c -MD -MP $(DEFS) $(LIB_CFLAGS) $(EXTRA_CFLAGS) 416 411 417 412 %.lo: %.c | depend … … 419 414 420 415 %.lo: %.cpp | depend 421 $(CXX_JOB) -c -MD -MP $(DEFS) $( CXXFLAGS) $(EXTRA_CXXFLAGS)416 $(CXX_JOB) -c -MD -MP $(DEFS) $(LIB_CXXFLAGS) $(EXTRA_CXXFLAGS) 422 417 423 418 %.lo: %.cxx | depend 424 $(CXX_JOB) -c -MD -MP $(DEFS) $( CXXFLAGS) $(EXTRA_CXXFLAGS)419 $(CXX_JOB) -c -MD -MP $(DEFS) $(LIB_CXXFLAGS) $(EXTRA_CXXFLAGS) 425 420 426 421 %.lo: %.cc | depend 427 $(CXX_JOB) -c -MD -MP $(DEFS) $( CXXFLAGS) $(EXTRA_CXXFLAGS)422 $(CXX_JOB) -c -MD -MP $(DEFS) $(LIB_CXXFLAGS) $(EXTRA_CXXFLAGS) 428 423 429 424 -include $(DEPENDS)
Note:
See TracChangeset
for help on using the changeset viewer.
