File: Makefile

package info (click to toggle)
pbzip2 1.1.8-1
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 304 kB
  • sloc: cpp: 4,349; makefile: 84
file content (69 lines) | stat: -rw-r--r-- 2,278 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Make file for parallel BZIP2
SHELL = /bin/sh

# Compiler to use
CC = g++
CFLAGS = -O2
#CFLAGS += -g -Wall
#CFLAGS += -ansi
#CFLAGS += -pedantic
#CFLAGS += -std=c++0x

# Comment out CFLAGS line below for compatability mode for 32bit file sizes
# (less than 2GB) and systems that have compilers that treat int as 64bit
# natively (ie: modern AIX)
CFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64

# Uncomment CFLAGS line below if you want to compile pbzip2 without load
# average support for systems that do not support it
#CFLAGS += -DPBZIP_NO_LOADAVG

# Uncomment CFLAGS line below to get debug output
#CFLAGS += -DPBZIP_DEBUG

# Comment out CFLAGS line below to disable pthread semantics in code
CFLAGS += -D_POSIX_PTHREAD_SEMANTICS

# Comment out CFLAGS line below to disable Thread stack size customization
CFLAGS += -DUSE_STACKSIZE_CUSTOMIZATION

# Comment out CFLAGS line below to explicity set ignore trailing garbage
# default behavior: 0 - disabled; 1 - enabled (ignore garbage by default)
# If IGNORE_TRAILING_GARBAGE is not defined: behavior is automatically determined
# by program name: bzip2, bunzip2, bzcat - ignore garbage; otherwise - not.
#CFLAGS += -DIGNORE_TRAILING_GARBAGE=1

# On some compilers -pthreads
CFLAGS += -pthread

# External libraries
LDFLAGS = -lbz2
LDFLAGS += -lpthread

# Where you want pbzip2 installed when you do 'make install'
PREFIX = /usr

all: pbzip2

# Standard pbzip2 compile
pbzip2: pbzip2.cpp BZ2StreamScanner.cpp ErrorContext.cpp
	$(CC) $(CFLAGS) $^ -o pbzip2 $(LDFLAGS)

# Choose this if you want to compile in a static version of the libbz2 library
pbzip2-static: pbzip2.cpp BZ2StreamScanner.cpp ErrorContext.cpp libbz2.a
	$(CC) $(CFLAGS) $^ -o pbzip2 -I. -L. $(LDFLAGS)

# Install the binary pbzip2 program and man page
install: pbzip2
	if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
	if ( test ! -d $(PREFIX)/man ) ; then mkdir -p $(PREFIX)/man ; fi
	if ( test ! -d $(PREFIX)/man/man1 ) ; then mkdir -p $(PREFIX)/man/man1 ; fi
	cp -f pbzip2 $(PREFIX)/bin/pbzip2
	chmod a+x $(PREFIX)/bin/pbzip2
	ln -s -f $(PREFIX)/bin/pbzip2 $(PREFIX)/bin/pbunzip2
	ln -s -f $(PREFIX)/bin/pbzip2 $(PREFIX)/bin/pbzcat
	cp -f pbzip2.1 $(PREFIX)/man/man1
	chmod a+r $(PREFIX)/man/man1/pbzip2.1

clean:
	rm -f *.o pbzip2