]> gitweb.michael.orlitzky.com - libsvgtiny.git/blob - Makefile
gperf -> .c rule. This isn't in the core buildsystem as nothing else requires this...
[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 # Toolchain flags
11 WARNFLAGS := -Wall -Wundef -Wpointer-arith -Wcast-align \
12 -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \
13 -Wmissing-declarations -Wnested-externs -Werror -pedantic
14 ifneq ($(GCCVER),2)
15 WARNFLAGS := $(WARNFLAGS) -Wextra
16 endif
17 CFLAGS := -D_BSD_SOURCE -I$(CURDIR)/include/ \
18 -I$(CURDIR)/src $(WARNFLAGS) $(CFLAGS)
19 ifneq ($(GCCVER),2)
20 CFLAGS := $(CFLAGS) -std=c99
21 else
22 # __inline__ is a GCCism
23 CFLAGS := $(CFLAGS) -Dinline="__inline__"
24 endif
25
26 # LibXML2
27 ifneq ($(PKGCONFIG),)
28 CFLAGS := $(CFLAGS) \
29 $(shell $(PKGCONFIG) $(PKGCONFIGFLAGS) --cflags libxml-2.0)
30 LDFLAGS := $(LDFLAGS) \
31 $(shell $(PKGCONFIG) $(PKGCONFIGFLAGS) --libs libxml-2.0)
32 else
33 CFLAGS := $(CFLAGS) -I$(PREFIX)/include/libxml2
34 LDFLAGS := $(CFLAGS) -lxml2
35 endif
36
37 include build/makefiles/Makefile.top
38
39 # Extra installation rules
40 I := /include
41 INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):include/svgtiny.h
42 INSTALL_ITEMS := $(INSTALL_ITEMS) /lib/pkgconfig:lib$(COMPONENT).pc.in
43 INSTALL_ITEMS := $(INSTALL_ITEMS) /lib:$(OUTPUT)