Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 1 | # |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 2 | ## Optional prefixes: |
| 3 | # |
| 4 | |
| 5 | # common 'packaging' directoty |
| 6 | |
Mike Frysinger | 76f6f0a | 2008-02-16 16:52:31 -0500 | [diff] [blame] | 7 | FAKEROOT=$(DESTDIR) |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 8 | |
| 9 | # Autoconf-style prefixes are activated when $(prefix) is defined. |
| 10 | # Otherwise binaries and libraraies are installed in /{lib,sbin}/, |
| 11 | # header files in /usr/include/ and documentation in /usr/man/man?/. |
| 12 | |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 13 | ifndef lib |
Andrew G. Morgan | 0d418f0 | 2008-03-27 08:41:56 -0700 | [diff] [blame] | 14 | lib=$(shell ldd /usr/bin/ld|fgrep libc.|cut -d/ -f2) |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 15 | endif |
| 16 | |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 17 | ifdef prefix |
| 18 | exec_prefix=$(prefix) |
| 19 | lib_prefix=$(exec_prefix) |
| 20 | inc_prefix=$(lib_prefix) |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 21 | man_prefix=$(prefix)/share |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 22 | else |
| 23 | prefix=/usr |
| 24 | exec_prefix= |
| 25 | lib_prefix=$(exec_prefix) |
| 26 | inc_prefix=$(prefix) |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 27 | man_prefix=$(prefix)/share |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 28 | endif |
| 29 | |
| 30 | # Target directories |
| 31 | |
| 32 | MANDIR=$(FAKEROOT)$(man_prefix)/man |
| 33 | SBINDIR=$(FAKEROOT)$(exec_prefix)/sbin |
| 34 | INCDIR=$(FAKEROOT)$(inc_prefix)/include |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 35 | LIBDIR=$(FAKEROOT)$(lib_prefix)/$(lib) |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 36 | |
Andrew Morgan | 370a70f | 2007-07-17 21:50:12 -0700 | [diff] [blame] | 37 | # common defines for libcap |
| 38 | LIBTITLE=libcap |
Andrew Morgan | f782a97 | 2007-11-07 22:14:24 -0800 | [diff] [blame] | 39 | VERSION=2 |
Andrew G. Morgan | 21291c2 | 2008-10-16 17:55:27 -0700 | [diff] [blame] | 40 | MINOR=13 |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 41 | # |
| 42 | |
| 43 | # Compilation specifics |
| 44 | |
Andrew G. Morgan | 8bdd0ef | 2008-09-10 19:50:50 -0700 | [diff] [blame] | 45 | KERNEL_HEADERS := $(topdir)/libcap/include |
| 46 | IPATH += -I$(topdir)/libcap/include -I$(KERNEL_HEADERS) |
| 47 | |
Andrew G. Morgan | 953e7f1 | 2008-06-02 22:02:01 -0700 | [diff] [blame] | 48 | CC := gcc |
| 49 | CFLAGS := -O2 |
| 50 | BUILD_CC := $(CC) |
Andrew G. Morgan | 8bdd0ef | 2008-09-10 19:50:50 -0700 | [diff] [blame] | 51 | BUILD_CFLAGS := $(CFLAGS) $(IPATH) |
Andrew G. Morgan | 953e7f1 | 2008-06-02 22:02:01 -0700 | [diff] [blame] | 52 | AR := ar |
| 53 | RANLIB := ranlib |
| 54 | DEBUG = -g #-DDEBUG |
Andrew Morgan | cd45c57 | 2007-08-13 23:16:50 -0700 | [diff] [blame] | 55 | WARNINGS=-fPIC -Wall -Wwrite-strings \ |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 56 | -Wpointer-arith -Wcast-qual -Wcast-align \ |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 57 | -Wstrict-prototypes -Wmissing-prototypes \ |
| 58 | -Wnested-externs -Winline -Wshadow |
Andrew Morgan | cd45c57 | 2007-08-13 23:16:50 -0700 | [diff] [blame] | 59 | LD=$(CC) -Wl,-x -shared |
Andrew G. Morgan | 953e7f1 | 2008-06-02 22:02:01 -0700 | [diff] [blame] | 60 | LDFLAGS := #-g |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 61 | |
Andrew Morgan | 54f055e | 2007-07-21 22:18:02 -0700 | [diff] [blame] | 62 | SYSTEM_HEADERS = /usr/include |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 63 | INCS=$(topdir)/libcap/include/sys/capability.h |
Andrew G. Morgan | 953e7f1 | 2008-06-02 22:02:01 -0700 | [diff] [blame] | 64 | LDFLAGS += -L$(topdir)/libcap |
| 65 | CFLAGS += -Dlinux $(WARNINGS) $(DEBUG) $(IPATH) |
| 66 | PAM_CAP := $(shell if [ -f /usr/include/security/pam_modules.h ]; then echo yes ; else echo no ; fi) |
Andrew G. Morgan | 4f288dd | 2008-10-16 17:50:58 -0700 | [diff] [blame] | 67 | INDENT := $(shell if [ -z "$(which ident 2>/dev/null)" ]; then echo "| indent -kr" ; fi) |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 68 | # Global cleanup stuff |
| 69 | |
| 70 | LOCALCLEAN=rm -f *~ core |
| 71 | DISTCLEAN=@find . \( -name '*.orig' -o -name '*.rej' \) | xargs rm -f |