]> gitweb.michael.orlitzky.com - libsvgtiny.git/blob - Makefile
Something approximating a makefile for the test binary.
[libsvgtiny.git] / Makefile
1 # Component settings
2 COMPONENT := svgtiny
3 COMPONENT_VERSION := 0.0.1
4 # Default to a static library
5 COMPONENT_TYPE ?= lib-static
6
7 # Setup the tooling
8 include build/makefiles/Makefile.tools
9
10 TESTRUNNER := $(ECHO)
11
12 # Toolchain flags
13 WARNFLAGS := -Wall -Wundef -Wpointer-arith -Wcast-align \
14 -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \
15 -Wmissing-declarations -Wnested-externs -Werror -pedantic
16 ifneq ($(GCCVER),2)
17 WARNFLAGS := $(WARNFLAGS) -Wextra
18 endif
19 CFLAGS := -D_BSD_SOURCE -I$(CURDIR)/include/ \
20 -I$(CURDIR)/src $(WARNFLAGS) $(CFLAGS)
21 ifneq ($(GCCVER),2)
22 CFLAGS := $(CFLAGS) -std=c99
23 else
24 # __inline__ is a GCCism
25 CFLAGS := $(CFLAGS) -Dinline="__inline__"
26 endif
27
28 # LibXML2
29 ifneq ($(PKGCONFIG),)
30 CFLAGS := $(CFLAGS) \
31 $(shell $(PKGCONFIG) $(PKGCONFIGFLAGS) --cflags libxml-2.0)
32 LDFLAGS := $(LDFLAGS) \
33 $(shell $(PKGCONFIG) $(PKGCONFIGFLAGS) --libs libxml-2.0)
34 else
35 CFLAGS := $(CFLAGS) -I$(PREFIX)/include/libxml2
36 LDFLAGS := $(CFLAGS) -lxml2
37 endif
38
39 include build/makefiles/Makefile.top
40
41 # Extra installation rules
42 I := /include
43 INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):include/svgtiny.h
44 INSTALL_ITEMS := $(INSTALL_ITEMS) /lib/pkgconfig:lib$(COMPONENT).pc.in
45 INSTALL_ITEMS := $(INSTALL_ITEMS) /lib:$(OUTPUT)