/ libpkg / Makefile.autosetup
Makefile.autosetup
  1  include @builddir@/mk/defs.mk
  2  LIB=	pkg
  3  SRCS=	backup_lib.c \
  4  	merge3.c \
  5  	pkg_audit.c \
  6  	pkg_deps.c \
  7  	pkg_repo_meta.c \
  8  	pkg.c \
  9  	pkg_key.c \
 10  	pkgsign.c \
 11  	pkgsign_ecc.c \
 12  	pkgsign_ossl.c \
 13  	clean_cache.c \
 14  	metalog.c \
 15  	pkg_checksum.c \
 16  	pkg_manifest.c \
 17  	pkg_repo_update.c \
 18  	pkgdb_iterator.c \
 19  	lua.c \
 20  	lua_scripts.c \
 21  	scripts.c \
 22  	diff.c \
 23  	packing.c \
 24  	pkg_config.c \
 25  	pkg_event.c \
 26  	pkg_object.c \
 27  	pkg_osvf.c \
 28  	pkg_repo.c \
 29  	pkgdb_query.c \
 30  	sha256.c dns_utils.c \
 31  	pkg_add.c \
 32  	pkg_create.c \
 33  	pkg_jobs_conflicts.c pkg_ports.c \
 34  	pkg_solve.c \
 35  	pkgdb.c \
 36  	pkg_abi.c \
 37  	pkg_elf.c \
 38  	pkg_abi_macho.c \
 39  	binfmt_macho.c \
 40  	ssh.c \
 41  	pkgbase.c \
 42  	pkg_arch.c \
 43  	pkg_cudf.c \
 44  	pkg_cpe.c \
 45  	pkg_jobs_universe.c  pkg_printf.c \
 46  	pkg_status.c \
 47  	plugins.c \
 48  	utils.c fetch.c \
 49  	pkg_sandbox.c \
 50  	pkg_attributes.c \
 51  	pkg_delete.c \
 52  	pkg_jobs.c \
 53  	pkg_jobs_schedule.c \
 54  	pkg_repo_create.c \
 55  	pkg_version.c \
 56  	rcscripts.c \
 57  	flags.c \
 58  	extattr.c \
 59  	fetch_ssh.c \
 60  	fetch_libfetch.c \
 61  	fetch_file.c \
 62  	triggers.c \
 63  	pkghash.c \
 64  	yuarel.c \
 65  	json.c
 66  
 67  LOCAL_CFLAGS=	-I$(top_srcdir)/compat \
 68  		-I$(top_srcdir)/external/blake2 \
 69  		-I$(top_srcdir)/external/sqlite \
 70  		-I$(top_srcdir)/external/uthash \
 71  		-I$(top_srcdir)/external/picosat \
 72  		-I$(top_srcdir)/external/yxml \
 73  		-I$(top_srcdir)/external/uthash \
 74  		-I$(top_srcdir)/external/include \
 75  		-I$(top_srcdir)/external/libucl/include \
 76  		-I$(top_srcdir)/external/lua/src \
 77  		-I$(top_srcdir)/external/liblua/ \
 78  		-I$(top_srcdir)/external/libder/libder \
 79  		-I$(top_srcdir)/external/libecc/include \
 80  		-I$(top_srcdir)/external/libfetch \
 81  		-I$(top_srcdir)/libpkg/repo \
 82  		-I$(top_builddir)/libpkg/repo \
 83  		-I$(top_srcdir)/libpkg \
 84  		-I$(top_builddir)/libpkg \
 85  		-I$(top_srcdir) \
 86  		-I$(top_builddir) \
 87  		-Wl,--as-needed \
 88  		-Wno-pointer-sign \
 89  		-Wno-missing-field-initializers \
 90  		-Wno-sign-compare \
 91  		-DPREFIX=\"$(PREFIX)\" \
 92  		-DHAVE_CONFIG_H
 93  
 94  LOCAL_LDFLAGS=	@waflags@ \
 95  		@REPOS_LDFLAGS@ \
 96  		-L$(top_builddir)/external/sqlite -lsqlite_pic \
 97  		-L$(top_builddir)/external/libucl -lucl_pic \
 98  		-L$(top_builddir)/external/picosat -lpicosat_pic \
 99  		-L$(top_builddir)/external/linenoise -llinenoise_pic \
100  		-L$(top_builddir)/external/yxml -lyxml_pic \
101  		-L$(top_builddir)/external/blake2 -lblake2_pic \
102  		-L$(top_builddir)/compat -lbsd_compat_pic \
103  		-L$(top_builddir)/external/liblua -llua_pic \
104  		-L$(top_builddir)/external/libder -lder_pic \
105  		-L$(top_builddir)/external/libecc -lecc_pic \
106  		-L$(top_builddir)/external/libfetch -lfetch_pic \
107  		@nowaflags@ \
108  		-lm
109  
110  STATIC_LIBS=	@REPOS_STATIC_LIBS@ \
111  		$(top_builddir)/external/sqlite/libsqlite.a \
112  		$(top_builddir)/external/libucl/libucl.a \
113  		$(top_builddir)/external/picosat/libpicosat.a \
114  		$(top_builddir)/external/linenoise/liblinenoise.a \
115  		$(top_builddir)/external/yxml/libyxml.a \
116  		$(top_builddir)/external/blake2/libblake2.a \
117  		$(top_builddir)/external/liblua/liblua.a \
118  		$(top_builddir)/compat/libbsd_compat.a \
119  		$(top_builddir)/external/libder/libder.a \
120  		$(top_builddir)/external/libecc/libecc.a \
121  		$(top_builddir)/external/libfetch/libfetch.a \
122  		lib$(LIB).a
123  
124  @if HAVE_LIBUTIL
125  LOCAL_LDFLAGS+=	-lutil
126  @endif
127  @if HAVE_LIBFTS
128  LOCAL_LDFLAGS+=	-lfts
129  @endif
130  @if HAVE_LIBDL
131  LOCAL_LDFLAGS+= -ldl
132  @endif
133  
134  @if pkgos_darwin
135  LOCAL_LDFLAGS+=	-lresolv
136  @else
137  @if pkgos_freebsd
138  LOCAL_LDFLAGS+=	-Wl,--version-script=$(top_srcdir)/libpkg/libpkg.ver,--undefined-version
139  @else
140  ### --undefined-version is a FreeBSD ld option
141  LOCAL_LDFLAGS+=	-Wl,--version-script=$(top_srcdir)/libpkg/libpkg.ver
142  @endif
143  @endif
144  
145  @if libelf-internal
146  LOCAL_CFLAGS+= -I$(top_srcdir)/external/libelf
147  STATIC_LIBS+=	$(top_builddir)/external/libelf/libelf.a
148  LOCAL_LDFLAGS+=	-L$(top_builddir)/external/libelf -lelf
149  @endif
150  
151  @if libelf-external
152  LOCAL_LDFLAGS+=	-lelf
153  @endif
154  
155  @if PKG_LIBARCHIVE_LIBS
156  LOCAL_CFLAGS+=	@PKG_LIBARCHIVE_CFLAGS@
157  LOCAL_LDFLAGS+=	@PKG_LIBARCHIVE_LDFLAGS@ @PKG_LIBARCHIVE_LIBS@
158  @else
159  LOCAL_LDFLAGS+=	-larchive
160  @endif
161  
162  @if PKG_OPENSSL_LIBS
163  LOCAL_CFLAGS+=	@PKG_OPENSSL_CFLAGS@
164  LOCAL_LDFLAGS+=	@PKG_OPENSSL_LDFLAGS@ @PKG_OPENSSL_LIBS@
165  @else
166  LOCAL_LDFLAGS+=	-lssl -lcrypto
167  @endif
168  
169  @if PKG_LIBLDNS_LIBS
170  LOCAL_CFLAGS+=	@PKG_LIBLDNS_CFLAGS@
171  LOCAL_LDFLAGS+=	@PKG_LIBLDNS_LDFLAGS@ @PKG_LIBLDNS_LIBS@
172  @endif
173  
174  VPATH=	$(top_srcdir)/libpkg
175  .PATH:	$(top_srcdir)/libpkg
176  
177  include $(MK)/lib.mk
178  
179  $(OBJS) $(SHOBJS): $(top_builddir)/pkg_config.h
180  
181  all: lib$(LIB)_flat.a
182  
183  lib$(LIB)$(LIBSOEXT): $(STATIC_LIBS)
184  
185  @if pkgos_darwin
186  lib$(LIB)_flat.a: $(STATIC_LIBS)
187  	libtool -static -o lib$(LIB)_flat.a $(STATIC_LIBS)
188  @else
189  lib$(LIB)_flat.a: ${STATIC_LIBS} mergelib_script
190  	$(AR) -M < mergelib_script
191  @endif
192  
193  mergelib_script: $(STATIC_LIBS)
194  	@echo "CREATE lib$(LIB)_flat.a" > $@
195  	@for l in $(STATIC_LIBS); do \
196  		echo "ADDLIB $$l"; \
197  	done >> $@
198  	@echo "SAVE" >> $@
199  	@echo "END" >> $@
200  
201  install: all pkg.h lib$(LIB)$(LIBSOEXT) lib$(LIB)_flat.a
202  	install -d -m 755 $(DESTDIR)$(libdir)
203  	install -d -m 755 $(DESTDIR)$(includedir)
204  	install -d -m 755 $(DESTDIR)$(includedir)/pkg
205  	install -d -m 755 $(DESTDIR)$(pkgconfigdir)
206  	install -m 644 lib$(LIB)$(LIBSOEXT) $(DESTDIR)$(libdir)/
207  	ln -sf lib$(LIB)$(LIBSOEXT) $(DESTDIR)$(libdir)/lib$(LIB)$(SH_SOEXT)
208  	install -m 644 lib$(LIB)_flat.a $(DESTDIR)$(libdir)/lib$(LIB).a
209  	install -m 644 pkg.h $(DESTDIR)$(includedir)/
210  	install -m 644 $(top_srcdir)/libpkg/pkg/vec.h $(DESTDIR)$(includedir)/pkg
211  	install -m 644 $(top_srcdir)/libpkg/pkg/audit.h $(DESTDIR)$(includedir)/pkg
212  	install -m 644 pkg.pc $(DESTDIR)$(pkgconfigdir)/