redox/Makefile

66 lines
1.4 KiB
Makefile

# Configuration and variables
include mk/config.mk
all: build/harddrive.bin
live: build/livedisk.bin
iso: build/livedisk.iso
clean:
cd cookbook && ./clean.sh
cargo clean --manifest-path cookbook/pkgutils/Cargo.toml
cargo clean --manifest-path installer/Cargo.toml
cargo clean --manifest-path kernel/Cargo.toml
cargo clean --manifest-path redoxfs/Cargo.toml
-$(FUMOUNT) build/filesystem/ || true
rm -rf build
pull:
git pull --rebase --recurse-submodules
git submodule sync
git submodule update --recursive --init
git clean -X -f -d
make clean
make update
update:
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
# Emulation recipes
include mk/qemu.mk
include mk/bochs.mk
include mk/virtualbox.mk
# Kernel recipes
include mk/kernel.mk
# Filesystem recipes
include mk/initfs.mk
include mk/filesystem.mk
# Disk images
include mk/disk.mk
# Travis target
travis: FORCE
make clean
INSTALLER_FLAGS= make build/harddrive.bin.gz build/livedisk.iso
mkdir build/travis
mv build/harddrive.bin.gz build/travis/redox_$(TRAVIS_TAG).bin.gz
mv build/livedisk.iso build/travis/redox_$(TRAVIS_TAG).iso
# 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