diff --git a/Makefile b/Makefile index 77a7c9f..eac1220 100644 --- a/Makefile +++ b/Makefile @@ -196,12 +196,12 @@ endif # On a given system, some libs may link statically, some may not; so, check # both and only build those that link! -ifeq ($(call try-build,$(SOURCE_STRLCPY),$(CFLAGS),),y) +ifeq ($(call try-build,$(SOURCE_STRLCPY),$(CFLAGS),$(LDFLAGS)),y) CFLAGS_DYNOPT += -DHAVE_STRLCPY CFLAGS_STATOPT += -DHAVE_STRLCPY endif -ifeq ($(call try-build,$(SOURCE_BFD),$(CFLAGS),-lbfd -static),y) +ifeq ($(call try-build,$(SOURCE_BFD),$(CFLAGS),$(LDFLAGS) -lbfd -static),y) CFLAGS_STATOPT += -DCONFIG_HAS_BFD OBJS_STATOPT += symbol.o LIBS_STATOPT += -lbfd @@ -212,7 +212,7 @@ endif ifeq (y,$(ARCH_HAS_FRAMEBUFFER)) CFLAGS_GTK3 := $(shell pkg-config --cflags gtk+-3.0 2>/dev/null) LDFLAGS_GTK3 := $(shell pkg-config --libs gtk+-3.0 2>/dev/null) - ifeq ($(call try-build,$(SOURCE_GTK3),$(CFLAGS) $(CFLAGS_GTK3),$(LDFLAGS_GTK3)),y) + ifeq ($(call try-build,$(SOURCE_GTK3),$(CFLAGS) $(CFLAGS_GTK3),$(LDFLAGS) $(LDFLAGS_GTK3)),y) OBJS_DYNOPT += ui/gtk3.o CFLAGS_DYNOPT += -DCONFIG_HAS_GTK3 $(CFLAGS_GTK3) LIBS_DYNOPT += $(LDFLAGS_GTK3) @@ -220,63 +220,63 @@ ifeq (y,$(ARCH_HAS_FRAMEBUFFER)) NOTFOUND += GTK3 endif - ifeq ($(call try-build,$(SOURCE_VNCSERVER),$(CFLAGS),-lvncserver),y) + ifeq ($(call try-build,$(SOURCE_VNCSERVER),$(CFLAGS),$(LDFLAGS) -lvncserver),y) OBJS_DYNOPT += ui/vnc.o CFLAGS_DYNOPT += -DCONFIG_HAS_VNCSERVER LIBS_DYNOPT += -lvncserver else NOTFOUND += vncserver endif - ifeq ($(call try-build,$(SOURCE_VNCSERVER),$(CFLAGS),-lvncserver -static),y) + ifeq ($(call try-build,$(SOURCE_VNCSERVER),$(CFLAGS),$(LDFLAGS) -lvncserver -static),y) OBJS_STATOPT += ui/vnc.o CFLAGS_STATOPT += -DCONFIG_HAS_VNCSERVER LIBS_STATOPT += -lvncserver endif - ifeq ($(call try-build,$(SOURCE_SDL),$(CFLAGS),-lSDL),y) + ifeq ($(call try-build,$(SOURCE_SDL),$(CFLAGS),$(LDFLAGS) -lSDL),y) OBJS_DYNOPT += ui/sdl.o CFLAGS_DYNOPT += -DCONFIG_HAS_SDL LIBS_DYNOPT += -lSDL else NOTFOUND += SDL endif - ifeq ($(call try-build,$(SOURCE_SDL),$(CFLAGS),-lSDL -static), y) + ifeq ($(call try-build,$(SOURCE_SDL),$(CFLAGS),$(LDFLAGS) -lSDL -static), y) OBJS_STATOPT += ui/sdl.o CFLAGS_STATOPT += -DCONFIG_HAS_SDL LIBS_STATOPT += -lSDL endif endif -ifeq ($(call try-build,$(SOURCE_ZLIB),$(CFLAGS),-lz),y) +ifeq ($(call try-build,$(SOURCE_ZLIB),$(CFLAGS),$(LDFLAGS) -lz),y) CFLAGS_DYNOPT += -DCONFIG_HAS_ZLIB LIBS_DYNOPT += -lz else NOTFOUND += zlib endif -ifeq ($(call try-build,$(SOURCE_ZLIB),$(CFLAGS),-lz -static),y) +ifeq ($(call try-build,$(SOURCE_ZLIB),$(CFLAGS),$(LDFLAGS) -lz -static),y) CFLAGS_STATOPT += -DCONFIG_HAS_ZLIB LIBS_STATOPT += -lz endif -ifeq ($(call try-build,$(SOURCE_AIO),$(CFLAGS),-laio),y) +ifeq ($(call try-build,$(SOURCE_AIO),$(CFLAGS),$(LDFLAGS) -laio),y) CFLAGS_DYNOPT += -DCONFIG_HAS_AIO LIBS_DYNOPT += -laio else NOTFOUND += aio endif -ifeq ($(call try-build,$(SOURCE_AIO),$(CFLAGS),-laio -static),y) +ifeq ($(call try-build,$(SOURCE_AIO),$(CFLAGS),$(LDFLAGS) -laio -static),y) CFLAGS_STATOPT += -DCONFIG_HAS_AIO LIBS_STATOPT += -laio endif ifeq ($(LTO),1) FLAGS_LTO := -flto - ifeq ($(call try-build,$(SOURCE_HELLO),$(CFLAGS),$(FLAGS_LTO)),y) + ifeq ($(call try-build,$(SOURCE_HELLO),$(CFLAGS),$(LDFLAGS) $(FLAGS_LTO)),y) override CFLAGS += $(FLAGS_LTO) endif endif -ifeq ($(call try-build,$(SOURCE_STATIC),,-static),y) +ifeq ($(call try-build,$(SOURCE_STATIC),$(CFLAGS),$(LDFLAGS) -static),y) override CFLAGS += -DCONFIG_GUEST_INIT GUEST_INIT := guest/init GUEST_OBJS = guest/guest_init.o @@ -370,11 +370,11 @@ STATIC_OBJS = $(patsubst %.o,%.static.o,$(OBJS) $(OBJS_STATOPT)) $(PROGRAM)-static: $(STATIC_OBJS) $(OTHEROBJS) $(GUEST_INIT) $(GUEST_PRE_INIT) $(E) " LINK " $@ - $(Q) $(CC) -static $(CFLAGS) $(STATIC_OBJS) $(OTHEROBJS) $(GUEST_OBJS) $(LIBS) $(LIBS_STATOPT) -o $@ + $(Q) $(CC) -static $(CFLAGS) $(STATIC_OBJS) $(OTHEROBJS) $(GUEST_OBJS) $(LDFLAGS) $(LIBS) $(LIBS_STATOPT) -o $@ $(PROGRAM): $(OBJS) $(OBJS_DYNOPT) $(OTHEROBJS) $(GUEST_INIT) $(GUEST_PRE_INIT) $(E) " LINK " $@ - $(Q) $(CC) $(CFLAGS) $(OBJS) $(OBJS_DYNOPT) $(OTHEROBJS) $(GUEST_OBJS) $(LIBS) $(LIBS_DYNOPT) -o $@ + $(Q) $(CC) $(CFLAGS) $(OBJS) $(OBJS_DYNOPT) $(OTHEROBJS) $(GUEST_OBJS) $(LDFLAGS) $(LIBS) $(LIBS_DYNOPT) -o $@ $(PROGRAM_ALIAS): $(PROGRAM) $(E) " LN " $@