2017-01-05 22:07:20 +01:00
|
|
|
# Configuration and variables
|
|
|
|
include mk/config.mk
|
2016-09-10 03:08:04 +02:00
|
|
|
|
2020-06-07 05:29:53 +02:00
|
|
|
# Dependencies
|
|
|
|
include mk/depends.mk
|
|
|
|
|
2022-11-10 20:06:24 +01:00
|
|
|
all: $(BUILD)/harddrive.img
|
2016-11-20 04:19:41 +01:00
|
|
|
|
2022-11-10 20:06:24 +01:00
|
|
|
live: $(BUILD)/livedisk.iso
|
2016-12-01 01:32:58 +01:00
|
|
|
|
2022-12-17 04:22:44 +01:00
|
|
|
image:
|
|
|
|
-$(FUMOUNT) $(BUILD)/filesystem/ || true
|
|
|
|
-$(FUMOUNT) /tmp/redox_installer/ || true
|
2023-01-12 05:31:21 +01:00
|
|
|
rm -f $(BUILD)/harddrive.img $(BUILD)/livedisk.iso
|
2022-12-17 04:22:44 +01:00
|
|
|
$(MAKE) all
|
|
|
|
|
2022-08-27 01:47:07 +02:00
|
|
|
rebuild:
|
2022-11-10 20:06:24 +01:00
|
|
|
-$(FUMOUNT) $(BUILD)/filesystem/ || true
|
2022-10-03 17:46:01 +02:00
|
|
|
-$(FUMOUNT) /tmp/redox_installer/ || true
|
2022-11-10 20:06:24 +01:00
|
|
|
rm -rf $(BUILD)
|
2022-08-27 01:47:07 +02:00
|
|
|
$(MAKE) all
|
|
|
|
|
2022-11-12 00:23:08 +01:00
|
|
|
clean: $(CONTAINER_TAG)
|
|
|
|
ifeq ($(PODMAN_BUILD),1)
|
|
|
|
$(PODMAN_RUN) $(MAKE) $@
|
|
|
|
else
|
2017-06-20 04:15:56 +02:00
|
|
|
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-06-30 02:14:28 +02:00
|
|
|
cargo clean --manifest-path redoxfs/Cargo.toml
|
2022-07-27 17:43:13 +02:00
|
|
|
cargo clean --manifest-path relibc/Cargo.toml
|
2022-11-12 00:23:08 +01:00
|
|
|
endif
|
2022-11-10 20:06:24 +01:00
|
|
|
-$(FUMOUNT) $(BUILD)/filesystem/ || true
|
2022-10-03 17:46:01 +02:00
|
|
|
-$(FUMOUNT) /tmp/redox_installer/ || true
|
2022-11-10 20:06:24 +01:00
|
|
|
rm -rf $(BUILD)
|
2016-11-02 15:32:14 +01:00
|
|
|
|
2022-11-12 00:23:08 +01:00
|
|
|
distclean: $(CONTAINER_TAG)
|
|
|
|
ifeq ($(PODMAN_BUILD),1)
|
|
|
|
$(PODMAN_RUN) $(MAKE) $@
|
|
|
|
else
|
2019-03-17 02:50:08 +01:00
|
|
|
$(MAKE) clean
|
2018-01-01 23:56:56 +01:00
|
|
|
cd cookbook && ./unfetch.sh
|
2022-11-12 00:23:08 +01:00
|
|
|
endif
|
2018-01-01 23:56:56 +01:00
|
|
|
|
2016-12-14 17:49:05 +01:00
|
|
|
pull:
|
2017-10-10 04:28:43 +02:00
|
|
|
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
|
|
|
|
2022-11-10 20:06:24 +01:00
|
|
|
fetch: $(BUILD)/fetch.tag
|
2016-12-14 17:49:05 +01:00
|
|
|
|
2022-11-10 20:06:24 +01:00
|
|
|
repo: $(BUILD)/repo.tag
|
2017-07-11 05:04:40 +02:00
|
|
|
|
2022-11-12 00:23:08 +01:00
|
|
|
# Podman build recipes and vars
|
|
|
|
include mk/podman.mk
|
|
|
|
|
2023-03-06 21:41:45 +01:00
|
|
|
# Disk Imaging and Cookbook tools
|
|
|
|
include mk/fstools.mk
|
|
|
|
|
2018-08-17 04:30:54 +02:00
|
|
|
# Cross compiler recipes
|
2018-08-18 02:47:48 +02:00
|
|
|
include mk/prefix.mk
|
2016-11-07 01:35:56 +01:00
|
|
|
|
2022-09-12 15:51:13 +02:00
|
|
|
# Repository maintenance
|
|
|
|
include mk/repo.mk
|
2022-02-08 01:13:28 +01:00
|
|
|
|
2017-01-05 22:07:20 +01:00
|
|
|
# Disk images
|
|
|
|
include mk/disk.mk
|
Orbital (#16)
* Port previous ethernet scheme
* Add ipd
* Fix initfs rebuilds, use QEMU user networking addresses in ipd
* Add tcp/udp, netutils, dns, and network config
* Add fsync to network driver
* Add dns, router, subnet by default
* Fix e1000 driver. Make ethernet and IP non-blocking to avoid deadlocks
* Add orbital server, WIP
* Add futex
* Add orbutils and orbital
* Update libstd, orbutils, and orbital
Move ANSI key encoding to vesad
* Add orbital assets
* Update orbital
* Update to add login manager
* Add blocking primitives, block for most things except waitpid, update orbital
* Wait in waitpid and IRQ, improvements for other waits
* Fevent in root scheme
* WIP: Switch to using fevent
* Reorganize
* Event based e1000d driver
* Superuser-only access to some network schemes, display, and disk
* Superuser root and irq schemes
* Fix orbital
2016-10-14 01:21:42 +02:00
|
|
|
|
2018-08-17 04:30:54 +02:00
|
|
|
# Emulation recipes
|
|
|
|
include mk/qemu.mk
|
|
|
|
include mk/virtualbox.mk
|
|
|
|
|
2022-10-11 17:12:33 +02:00
|
|
|
# CI
|
|
|
|
include mk/ci.mk
|
2019-03-17 02:09:43 +01:00
|
|
|
|
2022-11-15 07:13:46 +01:00
|
|
|
env: prefix FORCE $(CONTAINER_TAG)
|
|
|
|
ifeq ($(PODMAN_BUILD),1)
|
|
|
|
$(PODMAN_RUN) $(MAKE) $@
|
|
|
|
else
|
2018-11-23 03:35:12 +01:00
|
|
|
export PATH="$(PREFIX_PATH):$$PATH" && \
|
|
|
|
bash
|
2022-11-15 07:13:46 +01:00
|
|
|
endif
|
2018-11-23 03:35:12 +01:00
|
|
|
|
2020-04-18 22:25:53 +02:00
|
|
|
gdb: FORCE
|
2022-07-24 17:02:48 +02:00
|
|
|
gdb cookbook/recipes/kernel/build/kernel.sym --eval-command="target remote localhost:1234"
|
2020-04-18 22:25:53 +02:00
|
|
|
|
2017-01-10 05:54:38 +01:00
|
|
|
# An empty target
|
|
|
|
FORCE:
|
|
|
|
|
2019-03-16 21:55:11 +01:00
|
|
|
# Gzip any binary
|
|
|
|
%.gz: %
|
|
|
|
gzip -k -f $<
|
|
|
|
|
2017-01-10 05:54:38 +01:00
|
|
|
# Wireshark
|
Orbital (#16)
* Port previous ethernet scheme
* Add ipd
* Fix initfs rebuilds, use QEMU user networking addresses in ipd
* Add tcp/udp, netutils, dns, and network config
* Add fsync to network driver
* Add dns, router, subnet by default
* Fix e1000 driver. Make ethernet and IP non-blocking to avoid deadlocks
* Add orbital server, WIP
* Add futex
* Add orbutils and orbital
* Update libstd, orbutils, and orbital
Move ANSI key encoding to vesad
* Add orbital assets
* Update orbital
* Update to add login manager
* Add blocking primitives, block for most things except waitpid, update orbital
* Wait in waitpid and IRQ, improvements for other waits
* Fevent in root scheme
* WIP: Switch to using fevent
* Reorganize
* Event based e1000d driver
* Superuser-only access to some network schemes, display, and disk
* Superuser root and irq schemes
* Fix orbital
2016-10-14 01:21:42 +02:00
|
|
|
wireshark: FORCE
|
2022-11-10 20:06:24 +01:00
|
|
|
wireshark $(BUILD)/network.pcap
|