summaryrefslogtreecommitdiff
path: root/framebuffer/Makefile.target
diff options
context:
space:
mode:
authorVincent Sanders <vince@netsurf-browser.org>2010-10-27 18:39:24 +0000
committerVincent Sanders <vince@netsurf-browser.org>2010-10-27 18:39:24 +0000
commit72cf3adc786a8fe19e29ad6eec313a11f8d88139 (patch)
treef1af6dce09e3a229e40bb0148d4d9fd07d869dfe /framebuffer/Makefile.target
parentc07c79cc5e54d7faee8dadb40140c05e92f375d1 (diff)
downloadnetsurf-72cf3adc786a8fe19e29ad6eec313a11f8d88139.tar.gz
netsurf-72cf3adc786a8fe19e29ad6eec313a11f8d88139.tar.bz2
Beginning of NetSurf build infrastructure cleanup
Provide makefile fragment for each target, isolates the target makefile changes into one place simplifying the top level makefile svn path=/trunk/netsurf/; revision=10910
Diffstat (limited to 'framebuffer/Makefile.target')
-rw-r--r--framebuffer/Makefile.target69
1 files changed, 69 insertions, 0 deletions
diff --git a/framebuffer/Makefile.target b/framebuffer/Makefile.target
new file mode 100644
index 000000000..bd356ef82
--- /dev/null
+++ b/framebuffer/Makefile.target
@@ -0,0 +1,69 @@
+# ----------------------------------------------------------------------------
+# Framebuffer target setup
+# ----------------------------------------------------------------------------
+
+
+
+ $(eval $(call feature_enabled,MNG,-DWITH_MNG,-lmng,PNG/MNG/JNG (libmng)))
+ $(eval $(call feature_enabled,PNG,-DWITH_PNG,-lpng,PNG (libpng) ))
+
+ ifeq ($(NETSURF_FB_FONTLIB),freetype)
+ CFLAGS += -DFB_USE_FREETYPE $(shell freetype-config --cflags)
+ LDFLAGS += $(shell freetype-config --libs)
+ endif
+
+ # define additional CFLAGS and LDFLAGS requirements for pkg-configed libs here
+ NETSURF_FEATURE_RSVG_CFLAGS := -DWITH_RSVG
+ NETSURF_FEATURE_ROSPRITE_CFLAGS := -DWITH_NSSPRITE
+ NETSURF_FEATURE_HUBBUB_CFLAGS := -DWITH_HUBBUB
+ NETSURF_FEATURE_BMP_CFLAGS := -DWITH_BMP
+ NETSURF_FEATURE_GIF_CFLAGS := -DWITH_GIF
+
+ CFLAGS += -Dnsframebuffer
+
+ #resource path
+ CFLAGS += '-DNETSURF_FB_RESPATH="$(NETSURF_FB_RESPATH_$(NETSURF_FB_FRONTEND))"'
+
+ # compile time font locations
+ CFLAGS += '-DNETSURF_FB_FONT_SANS_SERIF="$(NETSURF_FB_FONT_SANS_SERIF)"'
+ CFLAGS += '-DNETSURF_FB_FONT_SANS_SERIF_BOLD="$(NETSURF_FB_FONT_SANS_SERIF_BOLD)"'
+ CFLAGS += '-DNETSURF_FB_FONT_SANS_SERIF_ITALIC="$(NETSURF_FB_FONT_SANS_SERIF_ITALIC)"'
+ CFLAGS += '-DNETSURF_FB_FONT_SANS_SERIF_ITALIC_BOLD="$(NETSURF_FB_FONT_SANS_SERIF_ITALIC_BOLD)"'
+ CFLAGS += '-DNETSURF_FB_FONT_SERIF="$(NETSURF_FB_FONT_SERIF)"'
+ CFLAGS += '-DNETSURF_FB_FONT_SERIF_BOLD="$(NETSURF_FB_FONT_SERIF_BOLD)"'
+ CFLAGS += '-DNETSURF_FB_FONT_MONOSPACE="$(NETSURF_FB_FONT_MONOSPACE)"'
+ CFLAGS += '-DNETSURF_FB_FONT_MONOSPACE_BOLD="$(NETSURF_FB_FONT_MONOSPACE_BOLD)"'
+ CFLAGS += '-DNETSURF_FB_FONT_CURSIVE="$(NETSURF_FB_FONT_CURSIVE)"'
+ CFLAGS += '-DNETSURF_FB_FONT_FANTASY="$(NETSURF_FB_FONT_FANTASY)"'
+
+ $(eval $(call pkg_config_find_and_add,ROSPRITE,librosprite,Sprite))
+ $(eval $(call pkg_config_find_and_add,BMP,libnsbmp,BMP))
+ $(eval $(call pkg_config_find_and_add,GIF,libnsgif,GIF))
+
+ CFLAGS += -std=c99 -g -I. -Dsmall $(WARNFLAGS) \
+ -D_BSD_SOURCE \
+ -D_XOPEN_SOURCE=600 \
+ -D_POSIX_C_SOURCE=200112L \
+ $(shell $(PKG_CONFIG) --cflags libnsfb libhubbub libcss openssl) \
+ $(shell xml2-config --cflags)
+
+ ifeq ($(HOST),mint)
+ # freemint does not support pkg-config for libcurl
+ CFLAGS += $(shell curl-config --cflags)
+ else
+ CFLAGS += $(shell $(PKG_CONFIG) --cflags libcurl)
+ endif
+
+ LDFLAGS += -Wl,--whole-archive $(shell $(PKG_CONFIG) --libs libnsfb) -Wl,--no-whole-archive
+
+ ifeq ($(HOST),mint)
+ LDFLAGS += $(shell curl-config --libs)
+ LDFLAGS += $(shell $(PKG_CONFIG) --libs libhubbub openssl libcss)
+ # xml-config returns -lsocket which is not needed and does not exist on all systems.
+ # because of that - hardcoded reference to libxml-2.0 here.
+ LDFLAGS += -L/usr/lib/ -lxml2 -lz -liconv
+ LDFLAGS += -lm
+ else
+ LDFLAGS += $(shell $(PKG_CONFIG) --libs libxml-2.0 libcurl libhubbub openssl)
+ LDFLAGS += $(shell $(PKG_CONFIG) --libs libcss)
+ endif