diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2010-12-04 18:10:35 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2010-12-04 18:10:35 +0000 |
commit | af49f5cbf103afc3878cb13b70b6549db752c73b (patch) | |
tree | 1770832de3c7e74018e5ade45702d474d2c0b35b /Makefile | |
parent | 7f7898eb7d743eb5741cfa31a25b0c5c68653568 (diff) | |
download | libnsfb-af49f5cbf103afc3878cb13b70b6549db752c73b.tar.gz libnsfb-af49f5cbf103afc3878cb13b70b6549db752c73b.tar.bz2 |
Make libnsfb dynamically detect the available surface libraries
svn path=/trunk/libnsfb/; revision=10972
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 28 |
1 files changed, 26 insertions, 2 deletions
@@ -18,8 +18,32 @@ WARNFLAGS := -Wall -Wextra -Wundef -Wpointer-arith -Wcast-align \ CFLAGS := -g -std=c99 -D_BSD_SOURCE -I$(CURDIR)/include/ \ -I$(CURDIR)/src $(WARNFLAGS) $(CFLAGS) -# TODO: probably want to retrieve SDL from pkg-config -TESTLDFLAGS = -Wl,--whole-archive -l$(COMPONENT) -Wl,--no-whole-archive -lSDL -lxcb-icccm -lxcb -lxcb-image -lxcb-keysyms +NSFB_XCB_PKG_NAMES := xcb xcb-icccm xcb-image xcb-keysyms + +$(eval $(call pkg_config_package_available,NSFB_SDL_AVAILABLE,sdl)) +$(eval $(call pkg_config_package_available,NSFB_XCB_AVAILABLE,$(NSFB_XCB_PKG_NAMES))) + +ifeq ($(NSFB_SDL_AVAILABLE),yes) + $(eval $(call pkg_config_package_add_flags,sdl,CFLAGS)) + $(eval $(call pkg_config_package_add_flags,sdl,TESTCFLAGS,TESTLDFLAGS)) + + REQUIRED_PKGS := $(REQUIRED_PKGS) sdl +endif + +ifeq ($(NSFB_XCB_AVAILABLE),yes) + $(eval $(call pkg_config_package_min_version,NSFB_XCB_NEW_API,xcb,0.23)) + + ifeq ($(NSFB_XCB_NEW_API),yes) + CFLAGS := $(CFLAGS) -DNEED_HINTS_ALLOC + endif + + $(eval $(call pkg_config_package_add_flags,$(NSFB_XCB_PKG_NAMES),CFLAGS)) + $(eval $(call pkg_config_package_add_flags,$(NSFB_XCB_PKG_NAMES),TESTCFLAGS,TESTLDFLAGS)) + + REQUIRED_PKGS := $(REQUIRED_PKGS) $(NSFB_XCB_PKG_NAMES) +endif + +TESTLDFLAGS := -Wl,--whole-archive -l$(COMPONENT) -Wl,--no-whole-archive $(TESTLDFLAGS) include build/makefiles/Makefile.top |