]> gitweb.michael.orlitzky.com - libsvgtiny.git/blobdiff - Makefile
examples/svgtiny_display_x11.c: include the system copy of svgtiny.h
[libsvgtiny.git] / Makefile
index 4bbcb12bf8a3555ab659dbb0333772111557db46..6511191fd38f92511187f2dd20f00fc754a7d58e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,24 +1,37 @@
+#!/bin/make
+#
+# Makefile for libsvgtiny
+#
+# Copyright 2009-2015 John-Mark Bell <jmb@netsurf-browser.org>
+
 # Component settings
 COMPONENT := svgtiny
-COMPONENT_VERSION := 0.0.1
+COMPONENT_VERSION := 0.1.7
 # Default to a static library
 COMPONENT_TYPE ?= lib-static
 
 # Setup the tooling
-include build/makefiles/Makefile.tools
+PREFIX ?= /opt/netsurf
+NSSHARED ?= $(PREFIX)/share/netsurf-buildsystem
+include $(NSSHARED)/makefiles/Makefile.tools
 
-TESTRUNNER := $(ECHO)
+# Reevaluate when used, as BUILDDIR won't be defined yet
+TESTRUNNER = test/runtest.sh $(BUILDDIR) $(EXEEXT)
 
 # Toolchain flags
 WARNFLAGS := -Wall -W -Wundef -Wpointer-arith -Wcast-align \
        -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \
        -Wmissing-declarations -Wnested-externs -pedantic
-# BeOS/Haiku standard library headers create warnings
-ifneq ($(TARGET),beos)
-  WARNFLAGS := $(WARNFLAGS) -Werror
+# BeOS/Haiku/AmigaOS standard library headers create warnings
+ifneq ($(BUILD),i586-pc-haiku)
+  ifneq ($(findstring amigaos,$(BUILD)),amigaos)
+    WARNFLAGS := $(WARNFLAGS) -Werror
+  endif
 endif
-CFLAGS := -D_BSD_SOURCE -I$(CURDIR)/include/ \
-       -I$(CURDIR)/src $(WARNFLAGS) $(CFLAGS)
+
+CFLAGS := -D_BSD_SOURCE -D_DEFAULT_SOURCE \
+       -I$(CURDIR)/include/ -I$(CURDIR)/src \
+       $(WARNFLAGS) $(CFLAGS)
 ifneq ($(GCCVER),2)
   CFLAGS := $(CFLAGS) -std=c99
 else
@@ -26,21 +39,21 @@ else
   CFLAGS := $(CFLAGS) -Dinline="__inline__"
 endif
 
-# LibXML2
+# libdom
 ifneq ($(PKGCONFIG),)
   CFLAGS := $(CFLAGS) \
-               $(shell $(PKGCONFIG) $(PKGCONFIGFLAGS) --cflags libxml-2.0)
-  LDFLAGS := $(LDFLAGS) \
-               $(shell $(PKGCONFIG) $(PKGCONFIGFLAGS) --libs libxml-2.0)
+               $(shell $(PKGCONFIG) $(PKGCONFIGFLAGS) --cflags libdom libwapcaplet)
+  LDFLAGS := $(LDFLAGS) -lm \
+               $(shell $(PKGCONFIG) $(PKGCONFIGFLAGS) --libs libdom libwapcaplet)
 else
-  CFLAGS := $(CFLAGS) -I$(PREFIX)/include/libxml2
-  LDFLAGS := $(CFLAGS) -lxml2
+  CFLAGS := $(CFLAGS) -I$(PREFIX)/include
+  LDFLAGS := $(CFLAGS) -ldom -lwapcaplet -lexpat -lm
 endif
 
-include build/makefiles/Makefile.top
+include $(NSBUILD)/Makefile.top
 
 # Extra installation rules
-I := /include
+I := /$(INCLUDEDIR)
 INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):include/svgtiny.h
-INSTALL_ITEMS := $(INSTALL_ITEMS) /lib/pkgconfig:lib$(COMPONENT).pc.in
-INSTALL_ITEMS := $(INSTALL_ITEMS) /lib:$(OUTPUT)
+INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR)/pkgconfig:lib$(COMPONENT).pc.in
+INSTALL_ITEMS := $(INSTALL_ITEMS) /$(LIBDIR):$(OUTPUT)