Date: Thu, 29 Oct 2020 13:57:34 -0700 From: "Simon J. Gerraty" <sjg@juniper.net> To: <freebsd-pkgbase@freebsd.org> Cc: <sjg@juniper.net> Subject: Re: directory per package ? Message-ID: <45178.1604005054@kaos.jnpr.net> In-Reply-To: <41616.1603577235@kaos.jnpr.net> References: <41616.1603577235@kaos.jnpr.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Simon J Gerraty <sjg@juniper.net> wrote: > I'm not currently subscribed to this list, so pls cc me. > > I'd like to request a change such that the final step of building each > package for base be done in its own directory. > > Why? So that Makefile.depend can be automatically captured for each > package thus allowing building with DIRDEPS_BUILD. > > Apart from simpler and more optimal build, this make it easy to build > just the package you want - since the directory represents a target > that can be built from top-level. > > As a quick experiment, I grep'd PACKAGE= from all the Makefiles > then from that list grabbed all those with PACKAGE= runtime > and turned that into targets/runtime/Makefile.depend The Makefile.depend files listed below were all generated from the PACKAGE= info in the Makefiles, which is ok for initial bootstrap but not ideal for ongoing maintenance. [I put all the lib* packages in a libs category] As mentioned before this allows any package name to be used as a top-level target, and virtually the entirety of src/Makefile* to be replaced with one line: .include <dirdeps-targets.mk> --sjg targets/packages/Makefile.depend targets/packages/acct/Makefile.depend targets/packages/acpi/Makefile.depend targets/packages/apm/Makefile.depend targets/packages/at/Makefile.depend targets/packages/autofs/Makefile.depend targets/packages/bhyve/Makefile.depend targets/packages/binutils/Makefile.depend targets/packages/bluetooth/Makefile.depend targets/packages/bsdinstall/Makefile.depend targets/packages/bsnmp/Makefile.depend targets/packages/caroot/Makefile.depend targets/packages/ccdconfig/Makefile.depend targets/packages/clang/Makefile.depend targets/packages/dma/Makefile.depend targets/packages/dpv/Makefile.depend targets/packages/ee/Makefile.depend targets/packages/examples/Makefile.depend targets/packages/gdb/Makefile.depend targets/packages/hast/Makefile.depend targets/packages/hostapd/Makefile.depend targets/packages/ipf/Makefile.depend targets/packages/ipfw/Makefile.depend targets/packages/iscsi/Makefile.depend targets/packages/iscsilegacy/Makefile.depend targets/packages/jail/Makefile.depend targets/packages/libs/Makefile.depend targets/packages/libs/lib9p/Makefile.depend targets/packages/libs/libarchive/Makefile.depend targets/packages/libs/libbegemot/Makefile.depend targets/packages/libs/libblocksruntime/Makefile.depend targets/packages/libs/libbsdstat/Makefile.depend targets/packages/libs/libbsm/Makefile.depend targets/packages/libs/libbz2/Makefile.depend targets/packages/libs/libcasper/Makefile.depend targets/packages/libs/libcompat/Makefile.depend targets/packages/libs/libcompiler_rt/Makefile.depend targets/packages/libs/libcuse/Makefile.depend targets/packages/libs/libdwarf/Makefile.depend targets/packages/libs/libefivar/Makefile.depend targets/packages/libs/libelftc/Makefile.depend targets/packages/libs/libevent1/Makefile.depend targets/packages/libs/libexecinfo/Makefile.depend targets/packages/libs/libexpat/Makefile.depend targets/packages/libs/libifconfig/Makefile.depend targets/packages/libs/libipt/Makefile.depend targets/packages/libs/libldns/Makefile.depend targets/packages/libs/liblzma/Makefile.depend targets/packages/libs/libmagic/Makefile.depend targets/packages/libs/libnetbsd/Makefile.depend targets/packages/libs/libnetmap/Makefile.depend targets/packages/libs/libopenbsd/Makefile.depend targets/packages/libs/libopencsd/Makefile.depend targets/packages/libs/libopie/Makefile.depend targets/packages/libs/libpathconv/Makefile.depend targets/packages/libs/libpmcstat/Makefile.depend targets/packages/libs/libregex/Makefile.depend targets/packages/libs/librpcsec_gss/Makefile.depend targets/packages/libs/librss/Makefile.depend targets/packages/libs/libsdp/Makefile.depend targets/packages/libs/libsmb/Makefile.depend targets/packages/libs/libsmdb/Makefile.depend targets/packages/libs/libsmutil/Makefile.depend targets/packages/libs/libsqlite3/Makefile.depend targets/packages/libs/libstdbuf/Makefile.depend targets/packages/libs/libstdthreads/Makefile.depend targets/packages/libs/libtelnet/Makefile.depend targets/packages/libs/libthread_db/Makefile.depend targets/packages/libs/libucl/Makefile.depend targets/packages/libs/libunbound/Makefile.depend targets/packages/libs/libvgl/Makefile.depend targets/packages/libs/libvmmapi/Makefile.depend targets/packages/libs/liby/Makefile.depend targets/packages/lld/Makefile.depend targets/packages/lldb/Makefile.depend targets/packages/natd/Makefile.depend targets/packages/pf/Makefile.depend targets/packages/quotacheck/Makefile.depend targets/packages/rc/Makefile.depend targets/packages/rcmds/Makefile.depend targets/packages/rescue/Makefile.depend targets/packages/runtime/Makefile.depend targets/packages/sendmail/Makefile.depend targets/packages/ssh/Makefile.depend targets/packages/svn/Makefile.depend targets/packages/tests/Makefile.depend targets/packages/unbound/Makefile.depend targets/packages/utilities/Makefile.depend targets/packages/vi/Makefile.depend targets/packages/wpa/Makefile.depend
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?45178.1604005054>