minix/Makefile

127 lines
3.6 KiB
Makefile
Raw Normal View History

2005-04-21 16:53:53 +02:00
# Master Makefile to compile everything in /usr/src except the system.
2010-12-10 23:20:12 +01:00
.include <bsd.own.mk>
MAKE=make
2005-04-21 16:53:53 +02:00
usage:
2005-10-21 20:31:45 +02:00
@echo ""
@echo "Master Makefile for MINIX commands and utilities."
@echo "Root privileges are required for some actions."
@echo ""
@echo "Usage:"
@echo " make world # Compile everything (libraries & commands)"
@echo " make includes # Install include files from src/"
@echo " make libraries # Compile and install libraries (ack)"
.ifdef MINIX_GENERATE_ELF
@echo " make elf-libraries # Compile and install gcc/clang elf libs"
.endif
@echo " make commands # Compile all, commands, but don't install"
@echo " make install # Compile and install commands"
@echo " make depend # Generate required .depend files"
@echo " make gnu-includes # Install include files for GCC"
.ifndef MINIX_GENERATE_ELF
@echo " make gnu-libraries # Compile and install libraries for GCC"
@echo " make clang-libraries # Compile and install libraries for GCC with clang"
.endif
@echo " make clean # Remove all compiler results"
2005-10-21 20:31:45 +02:00
@echo ""
@echo "Run 'make' in tools/ to create a new MINIX configuration."
@echo ""
2005-04-21 16:53:53 +02:00
# world has to be able to make a new system, even if there
# is no complete old system. it has to install commands, for which
# it has to install libraries, for which it has to install includes,
# for which it has to install /etc (for users and ownerships).
# etcfiles also creates a directory hierarchy in its
# 'make install' target.
#
# etcfiles has to be done first.
.ifdef MINIX_GENERATE_ELF
world: mkfiles includes depend libraries elf-libraries install etcforce
.else
.if ${COMPILER_TYPE} == "ack"
world: mkfiles includes depend libraries install etcforce
.elif ${COMPILER_TYPE} == "gnu"
2010-12-10 23:20:12 +01:00
.if ${OBJECT_FMT} == "a.out"
world: mkfiles includes depend gnu-libraries install etcforce
2010-12-10 23:20:12 +01:00
.elif ${OBJECT_FMT} == "ELF"
world: mkfiles elf-includes depend elf-libraries install etcforce
.endif
.endif
.endif
2010-02-25 23:10:48 +01:00
mkfiles:
make -C share/mk install
2005-04-21 16:53:53 +02:00
2005-05-02 16:30:04 +02:00
includes:
$(MAKE) -C include includes
$(MAKE) -C lib includes
2005-05-02 16:30:04 +02:00
libraries: includes
$(MAKE) -C lib build_ack
2005-04-21 16:53:53 +02:00
MKHEADERS411=/usr/gnu/libexec/gcc/i386-pc-minix/4.1.1/install-tools/mkheaders
2010-03-08 15:51:00 +01:00
MKHEADERS443=/usr/gnu/libexec/gcc/i686-pc-minix/4.4.3/install-tools/mkheaders
MKHEADERS443_PKGSRC=/usr/pkg/gcc44/libexec/gcc/i686-pc-minix/4.4.3/install-tools/mkheaders
gnu-includes: includes
SHELL=/bin/sh; if [ -f $(MKHEADERS411) ] ; then sh -e $(MKHEADERS411) ; fi
2010-03-08 15:51:00 +01:00
SHELL=/bin/sh; if [ -f $(MKHEADERS443) ] ; then sh -e $(MKHEADERS443) ; fi
SHELL=/bin/sh; if [ -f $(MKHEADERS443_PKGSRC) ] ; then sh -e $(MKHEADERS443_PKGSRC) ; fi
.ifndef MINIX_GENERATE_ELF
2011-01-28 12:35:02 +01:00
gnu-libraries: #gnu-includes
$(MAKE) -C lib build_gnu
2005-04-21 16:53:53 +02:00
2010-07-13 16:11:31 +02:00
clang-libraries: includes
$(MAKE) -C lib build_clang
.endif
2010-07-13 16:11:31 +02:00
.ifdef MINIX_GENERATE_ELF
elf-libraries: includes
$(MAKE) -C lib build_elf_base
.else
2010-12-10 23:20:12 +01:00
elf-libraries: elf-includes
$(MAKE) -C lib build_elf
.endif
2010-12-10 23:20:12 +01:00
commands: includes libraries
$(MAKE) -C commands all
2005-04-21 16:53:53 +02:00
2010-12-10 23:20:12 +01:00
depend:
$(MAKE) -C boot depend
$(MAKE) -C commands depend
$(MAKE) -C kernel depend
$(MAKE) -C servers depend
$(MAKE) -C drivers depend
2005-06-24 18:25:12 +02:00
2010-12-10 23:20:12 +01:00
etcfiles:
$(MAKE) -C etc install
2005-04-21 16:53:53 +02:00
2010-12-10 23:20:12 +01:00
etcforce:
2010-08-27 12:09:06 +02:00
$(MAKE) -C etc installforce
2010-12-10 23:20:12 +01:00
all:
$(MAKE) -C boot all
$(MAKE) -C commands all
$(MAKE) -C tools all
2005-07-26 15:50:58 +02:00
2010-12-10 23:20:12 +01:00
install:
$(MAKE) -C boot install
$(MAKE) -C man install makedb
$(MAKE) -C commands install
$(MAKE) -C share install
$(MAKE) -C tools install
2010-12-10 23:20:12 +01:00
clean:
$(MAKE) -C boot clean
$(MAKE) -C commands clean
$(MAKE) -C tools clean
$(MAKE) -C lib clean_all
$(MAKE) -C test clean
2010-12-10 23:20:12 +01:00
cleandepend:
$(MAKE) -C boot cleandepend
$(MAKE) -C commands cleandepend
$(MAKE) -C tools cleandepend