annotate contrib/Makefile @ 355:d1f930be4711

From Jeffrey Morlan: pst_build_id_ptr and pst_build_desc_ptr require that the first child of a BTree page have the same starting ID as itself. This is not required by the spec, and is not true in many real-world PSTs (presumably, the original first child of the page got deleted). Because of this, many emails are not being extracted from these PSTs. It also triggers an infinite loop in lspst (a separate bug, also fixed)
author Carl Byington <carl@five-ten-sg.com>
date Wed, 06 Jul 2016 10:12:22 -0700
parents c508ee15dfca
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
1 #!/usr/bin/make -f
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
2
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
3 CFLAGS ?= -g -Wall
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
4 PREFIX ?= /usr/local
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
5 INSTALL ?= install
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
6
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
7 #---------------- Do not modify below this point ------------------
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
8
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
9 INSTALL_DIR := $(INSTALL) -p -d -o root -g root -m 0755
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
10 INSTALL_FILE := $(INSTALL) -p -o root -g root -m 0644
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
11 INSTALL_PROGRAM := $(INSTALL) -p -o root -g root -m 0755 # -s
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
12 INSTALL_SCRIPT := $(INSTALL) -p -o root -g root -m 0755
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
13
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
14 VERSION = $(shell cat VERSION)
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
15 CFLAGS += -DVERSION=\"$(VERSION)\"
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
16 CPPFLAGS += -DVERSION=\"$(VERSION)\"
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
17
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
18 DOCS := AUTHORS ChangeLog CREDITS FILE-FORMAT FILE-FORMAT.html LICENSE TODO \
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
19 VERSION
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
20
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
21 DISTFILES := $(DOCS) Makefile setup1.vdproj XGetopt.c XGetopt.h common.h \
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
22 debug.c define.h dumpblocks.c getidblock.c libpst.c libpst.h \
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
23 libstrfunc.c libstrfunc.h lspst.c lzfu.c lzfu.h moz-script \
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
24 readlog.vcproj readpst.1 readpst.c readpstlog.1 readpstlog.c \
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
25 testdebug.c timeconv.c timeconv.h w32pst.sln w32pst.vcproj \
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
26 nick2ldif.cpp pst2ldif.cpp
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
27
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
28 PROGS := lspst readpst readpstlog pst2ldif nick2ldif
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
29 ALL_PROGS := $(PROGS) dumpblocks getidblock testdebug
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
30
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
31 all: $(PROGS)
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
32
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
33 XGetopt.o: XGetopt.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
34 debug.o: define.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
35 dumpblocks.o: define.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
36 getidblock.o: XGetopt.h define.h libpst.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
37 libpst.o: define.h libstrfunc.h libpst.h timeconv.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
38 libstrfunc.o: libstrfunc.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
39 lspst.o: libpst.h timeconv.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
40 lzfu.o: define.h libpst.h lzfu.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
41 readpst.o: XGetopt.h libstrfunc.h define.h libpst.h common.h timeconv.h lzfu.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
42 pst2ldif.o: XGetopt.h libstrfunc.h define.h libpst.h common.h timeconv.h lzfu.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
43 nick2ldif.o: XGetopt.h libstrfunc.h define.h libpst.h common.h timeconv.h lzfu.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
44 readpstlog.o: XGetopt.h define.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
45 testdebug.o: define.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
46 timeconv.o: timeconv.h common.h
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
47
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
48 readpst: readpst.o libpst.o timeconv.o libstrfunc.o debug.o lzfu.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
49 lspst: debug.o libpst.o libstrfunc.o lspst.o timeconv.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
50 getidblock: getidblock.o libpst.o debug.o libstrfunc.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
51 testdebug: testdebug.o debug.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
52 readpstlog: readpstlog.o debug.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
53 dumpblocks: dumpblocks.o libpst.o debug.o libstrfunc.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
54
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
55 pst2ldif: pst2ldif.o libpst.o timeconv.o libstrfunc.o debug.o lzfu.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
56 g++ ${CFLAGS} pst2ldif.cpp -o pst2ldif libpst.o timeconv.o libstrfunc.o debug.o lzfu.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
57
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
58 nick2ldif: nick2ldif.o libpst.o timeconv.o libstrfunc.o debug.o lzfu.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
59 g++ ${CFLAGS} nick2ldif.cpp -o nick2ldif libpst.o timeconv.o libstrfunc.o debug.o lzfu.o
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
60
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
61 clean:
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
62 rm -f core *.o readpst.log $(ALL_PROGS) *~ MANIFEST
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
63
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
64 distclean: clean
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
65 rm -f libpst-*.tar.gz
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
66
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
67 install: all
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
68 $(INSTALL_DIR) $(DESTDIR)$(PREFIX)/bin
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
69 $(INSTALL_PROGRAM) readpst{,log} $(DESTDIR)$(PREFIX)/bin
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
70 $(INSTALL_DIR) $(DESTDIR)$(PREFIX)/share/man/man1
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
71 $(INSTALL_FILE) readpst{,log}.1 $(DESTDIR)$(PREFIX)/share/man/man1/
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
72 $(INSTALL_DIR) $(DESTDIR)$(PREFIX)/share/doc/libpst
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
73 $(INSTALL_FILE) $(DOCS) $(DESTDIR)$(PREFIX)/share/doc/libpst/
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
74
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
75 uninstall:
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
76 -rm -f $(DESTDIR)$(PREFIX)/bin/readpst{,log}
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
77 -rm -f $(DESTDIR)$(PREFIX)/share/man/man1/readpst{,log}.1
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
78
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
79 # stolen from ESR's Software Release Practices HOWTO available at:
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
80 # http://en.tldp.org/HOWTO/Software-Release-Practice-HOWTO/distpractice.html
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
81 MANIFEST: Makefile
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
82 @ls $(DISTFILES) | sed s:^:libpst-$(VERSION)/: >MANIFEST
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
83 tarball libpst-$(VERSION).tar.gz: MANIFEST $(DISTFILES)
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
84 @(cd ..; ln -s libpst libpst-$(VERSION))
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
85 (cd ..; tar -czvf libpst/libpst-$(VERSION).tar.gz `cat libpst/MANIFEST`)
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
86 @(cd ..; rm libpst-$(VERSION))
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
87 @rm -f MANIFEST
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
88
c508ee15dfca switch to automake/autoconf
carl
parents:
diff changeset
89 .PHONY: clean distclean uninstall install tarball