xref: /openbsd/usr.sbin/pkg_add/Makefile (revision 217f4ef4)
1# $OpenBSD: Makefile,v 1.94 2022/04/16 09:32:40 espie Exp $
2
3.include <bsd.own.mk>
4
5MAN1=pkg_add.1 pkg_info.1 pkg_create.1 pkg_delete.1 \
6	pkg_mklocatedb.1 pkg_sign.1
7MAN5=package.5
8MAN8=pkg_check.8
9MAN=${MAN1} ${MAN5} ${MAN8}
10NOPROG=
11POD2MAN=/usr/bin/pod2man
12
13PACKAGES= \
14    OpenBSD/Add.pm \
15    OpenBSD/AddCreateDelete.pm \
16    OpenBSD/AddDelete.pm \
17    OpenBSD/ArcCheck.pm \
18    OpenBSD/BaseState.pm \
19    OpenBSD/CollisionReport.pm \
20    OpenBSD/Delete.pm \
21    OpenBSD/Dependencies/SolverBase.pm \
22    OpenBSD/Dependencies.pm \
23    OpenBSD/Error.pm \
24    OpenBSD/ForwardDependencies.pm \
25    OpenBSD/Getopt.pm \
26    OpenBSD/Handle.pm \
27    OpenBSD/IdCache.pm \
28    OpenBSD/InstalledInfo.pm \
29    OpenBSD/Interactive.pm \
30    OpenBSD/LibSpec.pm \
31    OpenBSD/LibSpec/Build.pm \
32    OpenBSD/Log.pm \
33    OpenBSD/Mtree.pm \
34    OpenBSD/OldLibs.pm \
35    OpenBSD/PackageInfo.pm \
36    OpenBSD/PackageLocation.pm \
37    OpenBSD/PackageLocator.pm \
38    OpenBSD/PackageName.pm \
39    OpenBSD/PackageRepository.pm \
40    OpenBSD/PackageRepository/Cache.pm \
41    OpenBSD/PackageRepository/HTTP.pm \
42    OpenBSD/PackageRepository/Installed.pm \
43    OpenBSD/PackageRepository/Persistent.pm \
44    OpenBSD/PackageRepository/SCP.pm \
45    OpenBSD/PackageRepositoryList.pm \
46    OpenBSD/PackingElement.pm \
47    OpenBSD/PackingList.pm \
48    OpenBSD/Paths.pm \
49    OpenBSD/PkgAdd.pm \
50    OpenBSD/PkgCfl.pm \
51    OpenBSD/PkgCheck.pm \
52    OpenBSD/PkgCreate.pm \
53    OpenBSD/PkgDelete.pm \
54    OpenBSD/PkgInfo.pm \
55    OpenBSD/PkgSign.pm \
56    OpenBSD/PkgSpec.pm \
57    OpenBSD/ProgressMeter/Term.pm \
58    OpenBSD/ProgressMeter.pm \
59    OpenBSD/Replace.pm \
60    OpenBSD/RequiredBy.pm \
61    OpenBSD/Search.pm \
62    OpenBSD/Signature.pm \
63    OpenBSD/Signer.pm \
64    OpenBSD/SharedItems.pm \
65    OpenBSD/SharedLibs.pm \
66    OpenBSD/State.pm \
67    OpenBSD/Subst.pm \
68    OpenBSD/Temp.pm \
69    OpenBSD/Tracker.pm \
70    OpenBSD/Update.pm \
71    OpenBSD/UpdateSet.pm \
72    OpenBSD/Ustar.pm \
73    OpenBSD/Vstat.pm \
74    OpenBSD/FwUpdate.pm \
75    OpenBSD/md5.pm
76
77PACKAGEDIRS=OpenBSD  OpenBSD/Dependencies OpenBSD/PackageRepository \
78    OpenBSD/ProgressMeter OpenBSD/LibSpec
79
80SCRIPTS= pkg_add \
81    pkg_mklocatedb
82
83SCRIPTS_LNK = \
84    pkg_add pkg_check \
85    pkg_add pkg_create \
86    pkg_add pkg_delete \
87    pkg_add pkg_info \
88    pkg_add pkg_sign
89
90LIBBASE=/usr/libdata/perl5
91
92PODS= \
93    OpenBSD::md5 \
94    OpenBSD::style \
95    OpenBSD::BaseState \
96    OpenBSD::Getopt \
97    OpenBSD::IdCache \
98    OpenBSD::Intro \
99    OpenBSD::Mtree \
100    OpenBSD::PackageName \
101    OpenBSD::PackingElement \
102    OpenBSD::PackingList \
103    OpenBSD::PkgCfl \
104    OpenBSD::PkgSpec \
105    OpenBSD::RequiredBy \
106    OpenBSD::Search \
107    OpenBSD::State \
108    OpenBSD::Ustar \
109    OpenBSD::Vstat
110
111MAN3=
112_quick3p=
113
114.for p in ${PODS}
115.  ifndef NOMAN
116MAN3 += $p.3p
117MANSRC_COOKIE=stamp-mansrc.build
118_quick3p+=${p:S,::,/,}.pod ${.OBJDIR}/$p.3p
119.  else
120MANSRC_COOKIE=
121.  endif
122
123$p.3p: ${p:S,::,/,}.pod
124	${POD2MAN} --section=3p --official --name=$p ${.ALLSRC} $@
125.endfor
126
127mansrc.build:
128.if !empty(_quick3p)
129	cd ${.CURDIR} && ${POD2MAN} --section=3p --official ${_quick3p}
130.endif
131
132all: ${MANSRC_COOKIE}
133
134stamp-mansrc.build:
135	@cd ${.CURDIR} && exec ${MAKE} mansrc.build
136	@touch $@
137
138MAN += ${MAN3}
139
140CLEANFILES= ${MAN3} stamp-mansrc.build
141
142realinstall:
143.for i in ${PACKAGEDIRS}
144	${INSTALL} -d -o ${LIBOWN} -g ${LIBGRP} -m ${DIRMODE} \
145		${DESTDIR}${LIBBASE}/$i
146.endfor
147.for i in ${PACKAGES}
148	${INSTALL} ${INSTALL_COPY} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
149		${.CURDIR}/$i ${DESTDIR}${LIBBASE}/$i
150.endfor
151.for i in ${SCRIPTS}
152	${INSTALL} ${INSTALL_COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
153		${.CURDIR}/$i ${DESTDIR}${BINDIR}/$i
154.endfor
155.for i j in ${SCRIPTS_LNK}
156	cd ${DESTDIR}${BINDIR} && ln -f $i $j
157.endfor
158
159.include <bsd.prog.mk>
160.PHONY: mansrc.build
161