95 lines
2.3 KiB
Makefile
95 lines
2.3 KiB
Makefile
# Copyright (c) 1986 Regents of the University of California.
|
|
# All rights reserved. The Berkeley software License Agreement
|
|
# specifies the terms and conditions for redistribution.
|
|
#
|
|
# This makefile is designed to be run as:
|
|
# make
|
|
#
|
|
# The `make' will compile everything, including a kernel, utilities
|
|
# and a root filesystem image.
|
|
|
|
# Filesystem and swap sizes.
|
|
FS_MBYTES = 100
|
|
U_MBYTES = 100
|
|
SWAP_MBYTES = 2
|
|
|
|
# Set this to the device name for your SD card. With this
|
|
# enabled you can use "make installfs" to copy the sdcard.img
|
|
# to the SD card.
|
|
|
|
#SDCARD = /dev/sdb
|
|
|
|
#
|
|
# C library options: passed to libc makefile.
|
|
# See lib/libc/Makefile for explanation.
|
|
#
|
|
DEFS =
|
|
|
|
FSUTIL = tools/fsutil/fsutil
|
|
|
|
-include Makefile.user
|
|
|
|
TOPSRC = $(shell pwd)
|
|
CONFIG = $(TOPSRC)/tools/configsys/config
|
|
|
|
all: .profile
|
|
$(MAKE) -C tools
|
|
$(MAKE) -C lib
|
|
$(MAKE) -C src install
|
|
$(MAKE) kernel
|
|
$(MAKE) fs
|
|
|
|
kernel: $(CONFIG)
|
|
$(MAKE) -C sys/pic32 all
|
|
|
|
fs: sdcard.img
|
|
|
|
.PHONY: sdcard.img
|
|
sdcard.img: $(FSUTIL) rootfs.manifest userfs.manifest
|
|
rm -f $@
|
|
$(FSUTIL) --repartition=fs=$(FS_MBYTES)M:swap=$(SWAP_MBYTES)M:fs=$(U_MBYTES)M $@
|
|
$(FSUTIL) --new --partition=1 --manifest=rootfs.manifest $@ .
|
|
# In case you need a separate /u partition,
|
|
# uncomment the following line.
|
|
# $(FSUTIL) --new --partition=3 --manifest=userfs.manifest $@ u
|
|
|
|
$(FSUTIL):
|
|
cd tools/fsutil; $(MAKE)
|
|
|
|
$(CONFIG):
|
|
make -C tools/configsys
|
|
|
|
clean:
|
|
rm -f *~
|
|
for dir in tools lib src sys/pic32; do $(MAKE) -C $$dir -k clean; done
|
|
|
|
cleanall: clean
|
|
$(MAKE) -C lib clean
|
|
rm -f sys/pic32/*/unix.hex bin/* sbin/* libexec/*
|
|
rm -f games/[a-k]* games/[m-z]* share/man/cat*/*
|
|
rm -f games/lib/adventure.dat games/lib/cfscores
|
|
rm -f share/re.help share/emg.keys share/misc/more.help
|
|
rm -f etc/termcap etc/remote etc/phones
|
|
rm -f tools/configsys/.depend
|
|
rm -f var/log/aculog sdcard.img
|
|
rm -rf var/lock share/unixbench
|
|
|
|
installfs:
|
|
ifdef SDCARD
|
|
@[ -f sdcard.img ] || $(MAKE) sdcard.img
|
|
sudo dd bs=32k if=sdcard.img of=$(SDCARD)
|
|
else
|
|
@echo "Error: No SDCARD defined."
|
|
endif
|
|
|
|
# TODO: make it relative to Target
|
|
installflash:
|
|
sudo pic32prog sys/pic32/fubarino/unix.hex
|
|
|
|
# TODO: make it relative to Target
|
|
installboot:
|
|
sudo pic32prog sys/pic32/fubarino/bootloader.hex
|
|
|
|
.profile: etc/root/dot.profile
|
|
cp etc/root/dot.profile .profile
|