Simplify specifying packages to build/install
The Portage packages that need to be built and/or installed are now specified in the `build.packages` and `install.packages` files, respectively. Similarly, packages to be installed on the host system are specified in `host-tools.packages`. Finally, the `installonly.packages` file contains a list of packages that are installed in the destination root, but not built in the sysroot beforehand. This allows `make` to better track when the package sets change. It will also make it easier to maintain different sets for different variants in the future.
This commit is contained in:
18
Makefile
18
Makefile
@@ -19,6 +19,7 @@ prepare: $(O)/.prepared
|
||||
|
||||
$(O)/.host-tools: \
|
||||
build-host-tools.sh \
|
||||
host-tools.packages \
|
||||
$(O)/.prepared
|
||||
./build-host-tools.sh
|
||||
touch $(O)/.host-tools
|
||||
@@ -27,18 +28,27 @@ host-tools: $(O)/.host-tools
|
||||
|
||||
$(O)/.built: \
|
||||
build.sh \
|
||||
build-rootfs.sh \
|
||||
$(O)/linux/arch/arm64/boot/Image.gz \
|
||||
build.packages \
|
||||
install.packages \
|
||||
$(O)/.host-tools \
|
||||
$(O)/.prepared
|
||||
./build.sh
|
||||
./build-rootfs.sh
|
||||
touch $(O)/.built
|
||||
|
||||
$(O)/.ready: \
|
||||
build-rootfs.sh \
|
||||
install.packages \
|
||||
installonly.packages \
|
||||
$(O)/linux/arch/arm64/boot/Image.gz \
|
||||
$(O)/.host-tools \
|
||||
$(O)/.built
|
||||
./build-rootfs.sh
|
||||
touch $(O)/.ready
|
||||
|
||||
$(IMAGESDIR)/rootfs.squashfs: \
|
||||
build-squashfs.sh \
|
||||
squashfs.exclude \
|
||||
$(O)/.built
|
||||
$(O)/.ready
|
||||
./build-squashfs.sh "$(IMAGESDIR)"
|
||||
|
||||
squashfs: $(IMAGESDIR)/rootfs.squashfs
|
||||
|
||||
Reference in New Issue
Block a user