10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe#
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe# This file and its contents are supplied under the terms of the
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe# Common Development and Distribution License ("CDDL"), version 1.0.
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe# You may only use this file in accordance with the terms of version
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe# 1.0 of the CDDL.
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe#
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe# A full copy of the text of the CDDL should have accompanied this
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe# source. A copy of the CDDL is also available via the Internet at
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe# http://www.illumos.org/license/CDDL.
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe#
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe# Copyright 2015, Richard Lowe.
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LowePROG= make
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LoweCMDDIR= $(SRC)/cmd/make/bin
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LoweOBJS= ar.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe depvar.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe doname.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe dosys.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe files.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe globals.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe implicit.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe macro.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe main.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe misc.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe nse_printdep.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe parallel.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe pmake.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe read.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe read2.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe rep.o \
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe state.o
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LoweSRCS=$(OBJS:%.o:$(CMDDIR)/%.cc)
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Loweinclude ../../Makefile.tools
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Loweinclude ../Makefile.com
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LoweLDLIBS += ../lib/mksh/libmksh.a ../lib/vroot/libvroot.a
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LoweLDLIBS += ../lib/bsd/libbsd.a -lc -lnsl -lumem
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LoweCPPFLAGS += -D_FILE_OFFSET_BITS=64
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LoweROOTLINKS = $(ROOTONBLDBINMACH)/dmake
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard LoweROOTRULES = $(ROOTONBLDSHARE)/make.rules
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Loweall: $(PROG)
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Loweinstall: all $(ROOTONBLDMACHPROG) $(ROOTLINKS) $(ROOTRULES)
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe$(PROG): $(OBJS)
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe $(LINK.cc) $(OBJS) -o $@ $(LDLIBS)
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe $(POST_PROCESS)
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe%.o: $(CMDDIR)/%.cc
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe $(COMPILE.cc) -o $@ $<
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe$(ROOTONBLDBINMACH)/dmake:
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe -$(RM) $@; $(SYMLINK) ./make $@
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe$(ROOTRULES) := FILEMODE = 0444
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe$(ROOTONBLDSHARE)/%: $(CMDDIR)/%.file
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe $(INS.rename)
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowelint:
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Loweclean:
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe $(RM) $(OBJS)
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Loweinclude $(SRC)/tools/Makefile.targ
10d63b7db37a83b39c7f511cf9426c9d03ea0760Richard Lowe