Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 1 | # |
Andrew Morgan | f2e0a44 | 2007-07-10 20:58:05 -0700 | [diff] [blame] | 2 | # $Id: Make.Rules,v 1.5 1999/11/18 06:06:02 morgan Exp $ |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 3 | # |
| 4 | |
| 5 | # |
| 6 | ## Optional prefixes: |
| 7 | # |
| 8 | |
| 9 | # common 'packaging' directoty |
| 10 | |
| 11 | FAKEROOT= |
| 12 | |
| 13 | # Autoconf-style prefixes are activated when $(prefix) is defined. |
| 14 | # Otherwise binaries and libraraies are installed in /{lib,sbin}/, |
| 15 | # header files in /usr/include/ and documentation in /usr/man/man?/. |
| 16 | |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 17 | ifndef lib |
| 18 | lib=lib |
| 19 | endif |
| 20 | |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 21 | ifdef prefix |
| 22 | exec_prefix=$(prefix) |
| 23 | lib_prefix=$(exec_prefix) |
| 24 | inc_prefix=$(lib_prefix) |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 25 | man_prefix=$(prefix)/share |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 26 | else |
| 27 | prefix=/usr |
| 28 | exec_prefix= |
| 29 | lib_prefix=$(exec_prefix) |
| 30 | inc_prefix=$(prefix) |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 31 | man_prefix=$(prefix)/share |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 32 | endif |
| 33 | |
| 34 | # Target directories |
| 35 | |
| 36 | MANDIR=$(FAKEROOT)$(man_prefix)/man |
| 37 | SBINDIR=$(FAKEROOT)$(exec_prefix)/sbin |
| 38 | INCDIR=$(FAKEROOT)$(inc_prefix)/include |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 39 | LIBDIR=$(FAKEROOT)$(lib_prefix)/$(lib) |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 40 | |
Andrew Morgan | 370a70f | 2007-07-17 21:50:12 -0700 | [diff] [blame] | 41 | # common defines for libcap |
| 42 | LIBTITLE=libcap |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 43 | VERSION=1 |
Andrew Morgan | 3f8d684 | 2007-07-18 23:46:06 -0700 | [diff] [blame] | 44 | MINOR=99 |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 45 | # |
| 46 | |
| 47 | # Compilation specifics |
| 48 | |
| 49 | CC=gcc |
| 50 | COPTFLAGS=-O2 |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 51 | DEBUG=-O2 -g #-DDEBUG |
| 52 | WARNINGS=-fPIC -D_POSIX_SOURCE -Wall -Wwrite-strings \ |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 53 | -Wpointer-arith -Wcast-qual -Wcast-align \ |
Andrew Morgan | 5216fff | 2007-07-10 22:38:22 -0700 | [diff] [blame] | 54 | -Wstrict-prototypes -Wmissing-prototypes \ |
| 55 | -Wnested-externs -Winline -Wshadow |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 56 | LD=ld |
| 57 | LDFLAGS=-s #-g |
| 58 | |
Andrew Morgan | 4ede698 | 2007-07-19 22:55:00 -0700 | [diff] [blame] | 59 | KERNEL_HEADERS = /usr/include |
Andrew Morgan | 54f055e | 2007-07-21 22:18:02 -0700 | [diff] [blame] | 60 | SYSTEM_HEADERS = /usr/include |
Andrew Morgan | 4ede698 | 2007-07-19 22:55:00 -0700 | [diff] [blame] | 61 | IPATH += -I$(topdir)/libcap/include |
Andrew Morgan | 2c9c053 | 2007-07-10 20:50:21 -0700 | [diff] [blame] | 62 | INCS=$(topdir)/libcap/include/sys/capability.h |
| 63 | LIBS=-L$(topdir)/libcap -lcap |
| 64 | CFLAGS=-Dlinux $(WARNINGS) $(DEBUG) $(COPTFLAG) $(IPATH) |
| 65 | |
| 66 | # Global cleanup stuff |
| 67 | |
| 68 | LOCALCLEAN=rm -f *~ core |
| 69 | DISTCLEAN=@find . \( -name '*.orig' -o -name '*.rej' \) | xargs rm -f |
| 70 | |
| 71 | # Flags to pass down recursive makes |
| 72 | |
| 73 | MAKE_DEFS = CC='$(CC)' CFLAGS='$(CFLAGS)' \ |
| 74 | LD='$(LD)' LIBS='$(LIBS)' LDFLAGS='$(LDFLAGS)' \ |
| 75 | VERSION='$(VERSION)' MINOR='$(MINOR)' \ |
| 76 | LIBDIR='$(LIBDIR)' INCDIR='$(INCDIR)' \ |
| 77 | SBINDIR='$(SBINDIR)' MANDIR='$(MANDIR)' |