Author: bursa
Date: Sun Feb 3 18:27:57 2008
New Revision: 3831
URL:
http://source.netsurf-browser.org?rev=3831&view=rev
Log:
Add support for cross-compiling to RISC OS.
Modified:
trunk/libsvgtiny/makefile
trunk/libsvgtiny/svgtiny_display
Modified: trunk/libsvgtiny/makefile
URL:
http://source.netsurf-browser.org/trunk/libsvgtiny/makefile?rev=3831&...
==============================================================================
--- trunk/libsvgtiny/makefile (original)
+++ trunk/libsvgtiny/makefile Sun Feb 3 18:27:57 2008
@@ -8,31 +8,61 @@
SOURCE = svgtiny.c colors.c
HDRS = svgtiny.h
+CFLAGS = -std=c99 -W -Wall -Wundef -Wpointer-arith -Wcast-qual \
+ -Wcast-align -Wwrite-strings -Wstrict-prototypes \
+ -Wmissing-prototypes -Wmissing-declarations \
+ -Wnested-externs -Winline -Wno-cast-align
+ARFLAGS = cr
+
+ifeq ($(TARGET),riscos)
+GCCSDK_INSTALL_CROSSBIN ?= /home/riscos/cross/bin
+GCCSDK_INSTALL_ENV ?= /home/riscos/env
+CC = $(GCCSDK_INSTALL_CROSSBIN)/gcc
+AR = $(GCCSDK_INSTALL_CROSSBIN)/ar
+CFLAGS += -Driscos -mpoke-function-name -I$(GCCSDK_INSTALL_ENV)/include \
+ -I$(GCCSDK_INSTALL_ENV)/include/libxml2
+LIBS = -L$(GCCSDK_INSTALL_ENV)/lib -lxml2 -lz
+EXEEXT = ,ff8
+else
+CFLAGS += -g `xml2-config --cflags` -fgnu89-inline
+LIBS = `xml2-config --libs`
+endif
+
+ifeq ($(TARGET),)
+OBJDIR = objects
+LIBDIR = lib
+BINDIR = bin
+else
+OBJDIR = $(TARGET)-objects
+LIBDIR = $(TARGET)-lib
+BINDIR = $(TARGET)-bin
+endif
+
+OBJS = $(addprefix $(OBJDIR)/, $(SOURCE:.c=.o))
+
.PHONY: all install clean
-CFLAGS = -std=c99 -g -W -Wall -Wundef -Wpointer-arith -Wcast-qual \
- -Wcast-align -Wwrite-strings -Wstrict-prototypes \
- -Wmissing-prototypes -Wmissing-declarations \
- -Wnested-externs -Winline -Wno-cast-align \
- `xml2-config --cflags`
-LIBS = `xml2-config --libs`
-ARFLAGS = cr
+all: $(LIBDIR)/libsvgtiny.a $(BINDIR)/svgtiny_test$(EXEEXT) colors.c
-OBJS = $(SOURCE:.c=.o)
+$(LIBDIR)/libsvgtiny.a: $(OBJS)
+ @echo " LINK:" $@
+ @mkdir -p $(LIBDIR)
+ @$(AR) $(ARFLAGS) $@ $(OBJS)
-all: libsvgtiny.a svgtiny_test$(EXEEXT)
+$(BINDIR)/svgtiny_test$(EXEEXT): svgtiny_test.c $(LIBDIR)/libsvgtiny.a
+ @echo " LINK:" $@
+ @mkdir -p $(BINDIR)
+ @$(CC) $(CFLAGS) $(LIBS) -o $@ $^
-libsvgtiny.a: $(OBJS)
- $(AR) $(ARFLAGS) $@ $(OBJS)
+$(OBJDIR)/%.o: %.c $(HDRS)
+ @echo " COMPILE:" $<
+ @mkdir -p $(OBJDIR)
+ @$(CC) $(CFLAGS) -c -o $@ $<
-svgtiny_test$(EXEEXT): svgtiny_test.c libsvgtiny.a
- $(CC) $(CFLAGS) $(LIBS) -o $@ $^
+%.c: %.gperf
+ @echo " GPERF:" $<
+ @gperf --output-file=$@ $<
clean:
- -rm *.o libsvgtiny.a svgtiny_test$(EXEEXT) colors.c
+ -rm $(OBJS) $(LIBDIR)/libsvgtiny.a $(BINDIR)/svgtiny_test$(EXEEXT) colors.c
-colors.c: colors.gperf
- gperf --output-file=$@ $<
-
-.c.o: $(HDRS)
- $(CC) $(CFLAGS) -c -o $@ $<
Modified: trunk/libsvgtiny/svgtiny_display
URL:
http://source.netsurf-browser.org/trunk/libsvgtiny/svgtiny_display?rev=38...
==============================================================================
--- trunk/libsvgtiny/svgtiny_display (original)
+++ trunk/libsvgtiny/svgtiny_display Sun Feb 3 18:27:57 2008
@@ -1,3 +1,3 @@
set -e
make
-./svgtiny_test $1 | convert mvg:- png:- | display -
+bin/svgtiny_test $1 | convert mvg:- png:- | display -