File: makefile.common

package info (click to toggle)
p7zip 16.02%2Bdfsg-6
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 14,144 kB
  • sloc: cpp: 167,145; ansic: 14,992; python: 1,911; asm: 1,688; sh: 1,132; makefile: 701
file content (150 lines) | stat: -rw-r--r-- 5,080 bytes parent folder | download | duplicates (5)
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
MKDIR = mkdir -p

DEST_HOME=/usr/local
DEST_BIN=$(DEST_HOME)/bin
DEST_SHARE=$(DEST_HOME)/lib/p7zip
DEST_SHARE_DOC=$(DEST_HOME)/share/doc/p7zip
DEST_MAN=$(DEST_HOME)/man

.PHONY: default all all2 7za 7zG 7zFM sfx 7z 7zr Client7z common common7z LangAndHelp tar_bin depend test test_7z test_7zr test_7zG test_Client7z LzmaCon test_LzmaCon  all_test app cppcheck lzham test_lib other

.PHONY: clean clean_full clean_C

include makefile.machine

default:7za

all:7za sfx

all2: all 7z

all3: all2 7zr

all4: all3 Client7z LzmaCon lzham test_lib

all4bis: all3 Client7z LzmaCon test_lib  # lzham not supported on x32 CPU.

all5: all4 7zG 7zFM

all6: all5 other

all_all : all6 

all_test : test test_7z test_7zr test_LzmaCon test_Client7z

all_test2 : all_test test_7zG

common:
	$(MKDIR) bin

app: common 7zFM 7zG 7z sfx
	rm -fr               p7zip.app
	$(MKDIR)             p7zip.app
	cp -rp GUI/Contents  p7zip.app/
	$(MKDIR)             p7zip.app/Contents
	$(MKDIR)             p7zip.app/Contents/MacOS
	cp bin/7zFM_do_not_use  p7zip.app/Contents/MacOS/
	cp bin/7zG           p7zip.app/Contents/MacOS/
	cp bin/7z.so         p7zip.app/Contents/MacOS/
	cp bin/7zCon.sfx     p7zip.app/Contents/MacOS/
	cp -rp bin/Codecs    p7zip.app/Contents/MacOS/
	cp -rp GUI/Lang      p7zip.app/Contents/MacOS/
	cp -rp DOC/MANUAL    p7zip.app/Contents/MacOS/help

LangAndHelp:
	cd bin ; rm -f Lang ; ln -s ../GUI/Lang   .
	cd bin ; rm -f help ; ln -s ../DOC/MANUAL help

clean: clean_C
	rm -fr bin
	rm -fr p7zip.app
	rm -f  Lang
	rm -fr CPP/7zip/P7ZIP.*
	rm -fr CPP/7zip/CMAKE/P7ZIP.*
	rm -fr CPP/7zip/PREMAKE/P7ZIP.*
	rm -f  CPP/7zip/QMAKE/*/*.o
	rm -f  CPP/7zip/QMAKE/*/Makefile
	rm -f  CPP/7zip/QMAKE/*/*.pro.user
	rm -f  CPP/7zip/QMAKE/*/*.x
	-find . -name "build*"    -exec rm -fr {} \;
	-find . -name "*-build-*" -exec rm -fr {} \;
	-find . -name "*.user"    -exec rm -f {} \;
	-find . -name "._*"       -exec rm -f {} \;
	rm -fr CPP/7zip/ANDROID/libs
	rm -fr CPP/7zip/ANDROID/obj
	rm -f make.log 1 2 cppcheck.out scan-build.out
	rm -f check/7z.so
	rm -fr p7zip.app/Contents/MacOS
	cd check                  ; ./clean_all.sh


clean_full:clean
	find . -name "makefile.depend" -exec rm -f {} \; -exec touch {} \;  # empty makefile.depend
	find . -name "*~"        -exec rm -f {} \;
	find . -name "*.orig"    -exec rm -fr {} \;  # kdiff3 merge
	find . -name ".*.swp"    -exec rm -f {} \;
	find . -name "*.i"       -exec rm -f {} \;
	find . -name "*.s"       -exec rm -f {} \;
	find . -name ".DS_Store" -exec rm -f {} \;  # MacOSX
	find . -name "._*"       -exec rm -f {} \;  # MacOSX
	find . -name "*.pyc"     -exec rm -f {} \;
	find . -name "*.[ch]"    -exec chmod -x {} \;
	find . -name "*.cpp"     -exec chmod -x {} \;
	find . -name "*.asm"     -exec chmod -x {} \;
	find . -name "makefile*" -exec chmod -x {} \;
	chmod -x ChangeLog README TODO man1/* DOC/*.txt
	chmod +x contrib/VirtualFileSystemForMidnightCommander/u7z
	chmod +x contrib/gzip-like_CLI_wrapper_for_7z/p7zip
	chmod +x install.sh check/*.sh

test: 7za sfx
	cd check ; TOOLS="${TOOLS}" ./check.sh "`pwd`/../bin/7za"

test_7z: 7z sfx
	cd check ; TOOLS="${TOOLS}" ./check.sh "`pwd`/../bin/7z"

test_7zr: 7zr sfx
	cd check ; TOOLS="${TOOLS}" ./check_7zr.sh "`pwd`/../bin/7zr"

test_7zG: 7zG sfx
	cd check ; TOOLS="${TOOLS}" ./check.sh "`pwd`/../bin/7zG"

test_Client7z: Client7z
	cd check ; TOOLS="${TOOLS}" ./check_Client7z.sh "`pwd`/../bin/Client7z"

install:
	./install.sh $(DEST_BIN) $(DEST_SHARE) $(DEST_MAN) $(DEST_SHARE_DOC) $(DEST_DIR)

# cppcheck -f : test all flags
cppcheck:
	cppcheck --enable=all -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DNDEBUG -D_REENTRANT -DENV_UNIX -D_7ZIP_LARGE_PAGES -DBREAK_HANDLER -DUNICODE -D_UNICODE   . 2>&1 | tee -i cppcheck.out

REP=$(shell pwd)
ARCHIVE=$(shell basename $(REP))

.PHONY: tar_all tar_all2 src_7z tar_bin tar_bin2

tar_all : clean_full
	rm -f  ../$(ARCHIVE)_src_all.tar.bz2
	cp makefile.linux_any_cpu makefile.machine
	cd .. ; (tar cf - $(ARCHIVE) | bzip2 -9 > $(ARCHIVE)_src_all.tar.bz2)

tar_all2 : clean_full
	rm -f  ../$(ARCHIVE)_src_all.tar.bz2
	cp makefile.linux_any_cpu makefile.machine
	cd .. ; (tar cf - $(ARCHIVE) | 7za a -mx=9 -tbzip2 -si $(ARCHIVE)_src_all.tar.bz2 )

src_7z : clean_full
	rm -f  ../$(ARCHIVE)_src.7z
	cd .. ; 7za a -mx=9 -m0=ppmd:mem=128m:o=32 $(ARCHIVE)_src.7z $(ARCHIVE)

tar_bin:
	rm -f  ../$(ARCHIVE)_x86_linux_bin.tar.bz2
	chmod +x install.sh contrib/VirtualFileSystemForMidnightCommander/u7z contrib/gzip-like_CLI_wrapper_for_7z/p7zip
	cd .. ; (tar cf - $(ARCHIVE)/bin $(ARCHIVE)/contrib $(ARCHIVE)/man1 $(ARCHIVE)/install.sh $(ARCHIVE)/ChangeLog $(ARCHIVE)/DOC $(ARCHIVE)/README $(ARCHIVE)/TODO | bzip2 -9 > $(ARCHIVE)_x86_linux_bin.tar.bz2)

tar_bin2:
	rm -f  ../$(ARCHIVE)_x86_linux_bin.tar.bz2
	chmod +x install.sh contrib/VirtualFileSystemForMidnightCommander/u7z contrib/gzip-like_CLI_wrapper_for_7z/p7zip
	cd .. ; (tar cf - $(ARCHIVE)/bin $(ARCHIVE)/contrib $(ARCHIVE)/man1 $(ARCHIVE)/install.sh $(ARCHIVE)/ChangeLog $(ARCHIVE)/DOC $(ARCHIVE)/README $(ARCHIVE)/TODO | 7za a -mx=9 -tbzip2 -si $(ARCHIVE)_x86_linux_bin.tar.bz2)