summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2010-12-29 21:26:45 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2010-12-29 21:26:45 +0000
commit2d7144103ca5df39a29161feba1e2886014678d6 (patch)
tree69d234f8bf078d8cd0689c8b501e0e79eb55bc11
parent43ce8206b762ebd4fa4fa4832b16ff2798a3c765 (diff)
downloadnetsurf-2d7144103ca5df39a29161feba1e2886014678d6.tar.gz
netsurf-2d7144103ca5df39a29161feba1e2886014678d6.tar.bz2
First cut at cross compilation support for the Amiga frontend
svn path=/trunk/netsurf/; revision=11149
-rw-r--r--Makefile21
-rw-r--r--amiga/Makefile.target52
2 files changed, 49 insertions, 24 deletions
diff --git a/Makefile b/Makefile
index 10950c502..7e8294abf 100644
--- a/Makefile
+++ b/Makefile
@@ -119,11 +119,6 @@ STRIP=strip
# Override this only if the host compiler is called something different
HOST_CC := gcc
-ifeq ($(TARGET),amiga)
- ifneq ($(HOST),amiga)
- CC := ppc-amigaos-gcc
- endif
-endif
ifeq ($(TARGET),riscos)
ifeq ($(HOST),riscos)
@@ -183,8 +178,20 @@ else
PKG_CONFIG := $(MINGW_INSTALL_ENV)/bin/pkg-config
endif
else
- # Building for GTK, Amiga, Framebuffer
- PKG_CONFIG := pkg-config
+ ifeq ($(TARGET),amiga)
+ ifneq ($(HOST),amiga)
+ # TODO: better defaults
+ GCCSDK_INSTALL_ENV ?= /home/jmb/netsurf/env/m68k-amigaos/env
+ GCCSDK_INSTALL_CROSSBIN ?= /home/jmb/netsurf/env/m68k-amigaos/cross/bin
+
+ CC := $(wildcard $(GCCSDK_INSTALL_CROSSBIN)/*gcc)
+
+ PKG_CONFIG := PKG_CONFIG_LIBDIR="$(GCCSDK_INSTALL_ENV)/lib/pkgconfig" pkg-config
+ endif
+ else
+ # Building for GTK, Framebuffer
+ PKG_CONFIG := pkg-config
+ endif
endif
endif
endif
diff --git a/amiga/Makefile.target b/amiga/Makefile.target
index 994d31177..dd17763e3 100644
--- a/amiga/Makefile.target
+++ b/amiga/Makefile.target
@@ -2,6 +2,7 @@
# Amiga target setup
# ----------------------------------------------------------------------------
+CFLAGS += -std=c99 -I . -Dnsamiga
NETSURF_FEATURE_ROSPRITE_CFLAGS := -DWITH_NSSPRITE
NETSURF_FEATURE_BMP_CFLAGS := -DWITH_BMP
@@ -10,24 +11,41 @@ NETSURF_FEATURE_PNG_CFLAGS := -DWITH_PNG
NETSURF_FEATURE_WEBP_CFLAGS := -DWITH_WEBP
NETSURF_FEATURE_NSSVG_CFLAGS := -DWITH_NS_SVG
-$(eval $(call feature_enabled,ROSPRITE,-DWITH_NSSPRITE,-lrosprite,Sprite (librosprite)))
-$(eval $(call feature_enabled,BMP,-DWITH_BMP,-lnsbmp,BMP (libnsbmp)))
-$(eval $(call feature_enabled,GIF,-DWITH_GIF,-lnsgif,GIF (libnsgif)))
-$(eval $(call feature_enabled,PNG,-DWITH_PNG,-lpng,PNG (libpng) ))
-$(eval $(call feature_enabled,NSSVG,-DWITH_NS_SVG,-lsvgtiny,SVG (libsvgtiny)))
-$(eval $(call feature_enabled,MNG,,-llcms -ljpeg,PNG/JNG/MNG (libmng)))
-$(eval $(call feature_enabled,WEBP,-DWITH_WEBP,-lwebp -lvpx,WebP (libwebp)))
-$(eval $(call feature_enabled,AMIGA_ICON,-DWITH_AMIGA_ICON,,Amiga icon ))
-
-CFLAGS += -D__USE_INLINE__ -std=c99 -I . -I /SDK/local/common/include/libpng12 -Dnsamiga
-LDFLAGS += -lxml2 -lcurl -lrtmp -lpthread -lregex -lauto
-LDFLAGS += -lssl -lcrypto -lhubbub -lcss -lparserutils -lwapcaplet -liconv
-
-ifeq ($(NETSURF_AMIGA_USE_CAIRO),YES)
- CFLAGS += -DNS_AMIGA_CAIRO -I /SDK/local/common/include/cairo
- LDFLAGS += -use-dynld -ldl -lcairo -lpixman-1 -lfreetype -lfontconfig -lpng -lexpat
- EXETARGET := NetSurf-Cairo
+ifeq ($(HOST),amiga)
+ $(eval $(call feature_enabled,ROSPRITE,-DWITH_NSSPRITE,-lrosprite,Sprite (librosprite)))
+ $(eval $(call feature_enabled,BMP,-DWITH_BMP,-lnsbmp,BMP (libnsbmp)))
+ $(eval $(call feature_enabled,GIF,-DWITH_GIF,-lnsgif,GIF (libnsgif)))
+ $(eval $(call feature_enabled,PNG,-DWITH_PNG,-lpng,PNG (libpng) ))
+ $(eval $(call feature_enabled,NSSVG,-DWITH_NS_SVG,-lsvgtiny,SVG (libsvgtiny)))
+ $(eval $(call feature_enabled,MNG,,-llcms -ljpeg,PNG/JNG/MNG (libmng)))
+ $(eval $(call feature_enabled,WEBP,-DWITH_WEBP,-lwebp -lvpx,WebP (libwebp)))
+ $(eval $(call feature_enabled,AMIGA_ICON,-DWITH_AMIGA_ICON,,Amiga icon ))
+
+ CFLAGS += -D__USE_INLINE__ -I /SDK/local/common/include/libpng12
+ LDFLAGS += -lxml2 -lcurl -lrtmp -lpthread -lregex -lauto
+ LDFLAGS += -lssl -lcrypto -lhubbub -lcss -lparserutils -lwapcaplet -liconv
+
+ ifeq ($(NETSURF_AMIGA_USE_CAIRO),YES)
+ CFLAGS += -DNS_AMIGA_CAIRO -I /SDK/local/common/include/cairo
+ LDFLAGS += -use-dynld -ldl -lcairo -lpixman-1 -lfreetype -lfontconfig -lpng -lexpat
+ EXETARGET := NetSurf-Cairo
+ else
+ EXETARGET := NetSurf
+ endif
else
+ $(eval $(call pkg_config_find_and_add,BMP,libnsbmp,BMP))
+ $(eval $(call pkg_config_find_and_add,GIF,libnsgif,GIF))
+ $(eval $(call pkg_config_find_and_add,PNG,libpng,PNG))
+ $(eval $(call pkg_config_find_and_add,NSSVG,libsvgtiny,NSSVG))
+
+ CFLAGS += -I$(GCCSDK_INSTALL_ENV)/include
+ CFLAGS += $(shell $(PKG_CONFIG) --cflags libxml-2.0 libcares libcurl openssl)
+ CFLAGS += $(shell $(PKG_CONFIG) --cflags tre libhubbub libcss)
+
+ LDFLAGS += -L$(GCCSDK_INSTALL_ENV)/lib
+ LDFLAGS += $(shell $(PKG_CONFIG) --libs libxml-2.0 libcares libcurl openssl)
+ LDFLAGS += $(shell $(PKG_CONFIG) --libs tre libhubbub libcss)
+
EXETARGET := NetSurf
endif