redox/Makefile

86 lines
2.4 KiB
Makefile
Raw Normal View History

2017-01-05 22:07:20 +01:00
# Configuration and variables
include mk/config.mk
2016-09-10 03:08:04 +02:00
all: build/harddrive.bin
live: build/livedisk.bin
2016-08-26 01:03:01 +02:00
2016-12-01 04:58:22 +01:00
iso: build/livedisk.iso
2016-09-10 03:08:04 +02:00
clean:
cd cookbook && ./clean.sh
2017-06-18 23:59:43 +02:00
cargo clean --manifest-path cookbook/pkgutils/Cargo.toml
cargo clean --manifest-path installer/Cargo.toml
2017-05-11 05:39:05 +02:00
cargo clean --manifest-path kernel/Cargo.toml
2018-01-01 23:56:56 +01:00
cargo clean --manifest-path kernel/syscall/Cargo.toml
cargo clean --manifest-path redoxfs/Cargo.toml
-$(FUMOUNT) build/filesystem/ || true
2016-09-10 03:08:04 +02:00
rm -rf build
2016-11-02 15:32:14 +01:00
2018-01-01 23:56:56 +01:00
distclean:
make clean
cd cookbook && ./unfetch.sh
2016-12-14 17:49:05 +01:00
pull:
git pull --recurse-submodules
git submodule sync --recursive
2016-12-14 17:49:05 +01:00
git submodule update --recursive --init
2017-06-18 23:59:43 +02:00
update:
2017-09-27 04:53:08 +02:00
cd cookbook && ./update.sh \
"$$(cargo run --manifest-path ../installer/Cargo.toml -- --list-packages -c ../initfs.toml)" \
"$$(cargo run --manifest-path ../installer/Cargo.toml -- --list-packages -c ../filesystem.toml)"
2017-06-18 23:59:43 +02:00
cargo update --manifest-path cookbook/pkgutils/Cargo.toml
cargo update --manifest-path installer/Cargo.toml
cargo update --manifest-path kernel/Cargo.toml
cargo update --manifest-path redoxfs/Cargo.toml
2016-12-14 17:49:05 +01:00
2017-07-11 05:04:40 +02:00
fetch:
2017-09-27 04:53:08 +02:00
cd cookbook && ./fetch.sh \
"$$(cargo run --manifest-path ../installer/Cargo.toml -- --list-packages -c ../initfs.toml)" \
"$$(cargo run --manifest-path ../installer/Cargo.toml -- --list-packages -c ../filesystem.toml)"
2017-07-11 05:04:40 +02:00
2017-01-05 22:07:20 +01:00
# Emulation recipes
include mk/qemu.mk
include mk/bochs.mk
include mk/virtualbox.mk
2016-11-07 01:35:56 +01:00
2016-09-10 03:08:04 +02:00
# Kernel recipes
2017-01-05 22:07:20 +01:00
include mk/kernel.mk
2017-01-05 22:07:20 +01:00
# Filesystem recipes
include mk/initfs.mk
include mk/filesystem.mk
2017-01-05 22:07:20 +01:00
# Disk images
include mk/disk.mk
2018-06-10 17:54:05 +02:00
# CI image target
ci-img: FORCE
make INSTALLER_FLAGS= build/harddrive.bin.gz build/harddrive-efi.bin.gz build/livedisk.iso build/livedisk-efi.iso
rm -rf build/img
mkdir build/img
mv build/harddrive.bin.gz build/img/redox_$(IMG_TAG)_harddrive.bin.gz
mv build/livedisk.iso build/img/redox_$(IMG_TAG)_livedisk.iso
mv build/harddrive-efi.bin.gz build/img/redox_$(IMG_TAG)_harddrive-efi.bin.gz
mv build/livedisk-efi.iso build/img/redox_$(IMG_TAG)_livedisk-efi.iso
cd build/img && sha256sum -b * > SHA256SUM
# CI packaging target
ci-pkg: FORCE
cd cookbook && ./fetch.sh \
"$$(cargo run --manifest-path ../installer/Cargo.toml -- --list-packages -c ../ci.toml)"
cd cookbook && ./repo.sh \
"$$(cargo run --manifest-path ../installer/Cargo.toml -- --list-packages -c ../ci.toml)"
2017-01-10 05:54:38 +01:00
# An empty target
FORCE:
# A method of creating a listing for any binary
%.list: %
objdump -C -M intel -D $< > $@
# Wireshark
wireshark: FORCE
wireshark build/network.pcap