1#!/bin/make 2# 3# Makefile for libnspsl 4# 5# Copyright 2016 Vincent Sanders <vince@netsurf-browser.org> 6 7# Component settings 8COMPONENT := nspsl 9COMPONENT_VERSION := 0.1.6 10# Default to a static library 11COMPONENT_TYPE ?= lib-static 12 13# Setup the tooling 14PREFIX ?= /opt/netsurf 15NSSHARED ?= $(PREFIX)/share/netsurf-buildsystem 16include $(NSSHARED)/makefiles/Makefile.tools 17 18# Reevaluate when used, as BUILDDIR won't be defined yet 19TESTRUNNER = test/runtest.sh $(BUILDDIR) $(EXEEXT) 20 21# Toolchain flags 22WARNFLAGS := -Wall -W -Wundef -Wpointer-arith -Wcast-align \ 23 -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \ 24 -Wmissing-declarations -Wnested-externs 25 26CFLAGS := -D_GNU_SOURCE -D_DEFAULT_SOURCE \ 27 -I$(CURDIR)/include/ -I$(CURDIR)/src \ 28 $(WARNFLAGS) $(CFLAGS) 29ifneq ($(GCCVER),2) 30 CFLAGS := $(CFLAGS) -std=c99 31else 32 # __inline__ is a GCCism 33 CFLAGS := $(CFLAGS) -Dinline="__inline__" 34endif 35CFLAGS := $(CFLAGS) -D_POSIX_C_SOURCE=200809L 36 37REQUIRED_LIBS := nspsl 38 39TESTCFLAGS := -g -O2 40TESTLDFLAGS := -l$(COMPONENT) $(TESTLDFLAGS) 41 42include $(NSBUILD)/Makefile.top 43 44# Extra installation rules 45I := /$(INCLUDEDIR) 46INSTALL_ITEMS := $(INSTALL_ITEMS) $(I):include/nspsl.h 47INSTALL_ITEMS := $(INSTALL_ITEMS) /libdata/pkgconfig:lib$(COMPONENT).pc.in 48INSTALL_ITEMS := $(INSTALL_ITEMS) /lib:$(OUTPUT) 49 50# obtain public suffix list database from upstream 51public_suffix_list.dat: 52 wget -O $@ https://publicsuffix.org/list/public_suffix_list.dat 53