cc147f79e4
There is no reason to not use an archive manager to build our executables. If there really are systems which don't have any kind of archive manager, we can simply link all the objects. This also drops any use of configure to detect library objects. Instead just use HAVE_* and let the archive manager delete them. A lot of additional functions could be declared library functions and reorganized. ***FIX*** Mkfiles/*.mak have not yet been updated. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
117 lines
3.4 KiB
Makefile
117 lines
3.4 KiB
Makefile
#
|
|
# Auto-configuring Makefile for RDOFF object file utils; part of the
|
|
# Netwide Assembler
|
|
#
|
|
# The Netwide Assembler is copyright (C) 1996 Simon Tatham and
|
|
# Julian Hall. All rights reserved. The software is
|
|
# redistributable under the license given in the file "LICENSE"
|
|
# distributed in the NASM archive.
|
|
|
|
top_srcdir = @top_srcdir@
|
|
srcdir = @srcdir@
|
|
VPATH = @srcdir@
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
bindir = @bindir@
|
|
mandir = @mandir@
|
|
datarootdir = @datarootdir@
|
|
|
|
CC = @CC@
|
|
CFLAGS = @CFLAGS@
|
|
BUILD_CFLAGS = $(CFLAGS) @DEFS@
|
|
INTERNAL_CFLAGS = -I$(srcdir) -I$(top_srcdir)
|
|
ALL_CFLAGS = $(BUILD_CFLAGS) $(INTERNAL_CFLAGS)
|
|
LDFLAGS = @LDFLAGS@
|
|
LIBS = @LIBS@
|
|
|
|
AR = @AR@
|
|
RANLIB = @RANLIB@
|
|
STRIP = @STRIP@
|
|
|
|
INSTALL = @INSTALL@
|
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
INSTALL_DATA = @INSTALL_DATA@
|
|
LN_S = @LN_S@
|
|
|
|
MKDIR = mkdir
|
|
RM = rm
|
|
|
|
LIBOBJS = rdoff.$(O) rdfload.$(O) symtab.$(O) collectn.$(O) \
|
|
rdlib.$(O) segtab.$(O) hash.$(O)
|
|
RDFLIB = librdoff.$(A)
|
|
NASMLIB = ../libnasm.$(A)
|
|
LIBS = $(RDFLIB) $(NASMLIB)
|
|
|
|
# Binary suffixes
|
|
O = @OBJEXT@
|
|
X = @EXEEXT@
|
|
A = a
|
|
|
|
PROGRAMS = rdfdump$(X) ldrdf$(X) rdx$(X) rdflib$(X) \
|
|
rdf2bin$(X) rdf2com$(X) rdf2ith$(X) rdf2ihx$(X) rdf2srec$(X)
|
|
|
|
.SUFFIXES: .c .i .s .$(O) .$(A) .1 .man
|
|
|
|
.c.$(O):
|
|
$(CC) -c $(ALL_CFLAGS) $<
|
|
|
|
all: $(PROGRAMS)
|
|
|
|
$(RDFLIB): $(LIBOBJS)
|
|
$(RM) -f $(RDFLIB)
|
|
$(AR) cq $(RDFLIB) $(LIBOBJS)
|
|
$(RANLIB) $(RDFLIB)
|
|
|
|
rdfdump$(X): rdfdump.$(O) $(LIBS)
|
|
$(CC) $(LDFLAGS) -o rdfdump$(X) rdfdump.$(O) $(LIBS)
|
|
ldrdf$(X): ldrdf.$(O) $(LIBS)
|
|
$(CC) $(LDFLAGS) -o ldrdf$(X) ldrdf.$(O) $(LIBS)
|
|
rdx$(X): rdx.$(O) $(LIBS)
|
|
$(CC) $(LDFLAGS) -o rdx$(X) rdx.$(O) $(LIBS)
|
|
rdflib$(X): rdflib.$(O) $(LIBS)
|
|
$(CC) $(LDFLAGS) -o rdflib$(X) rdflib.$(O) $(LIBS)
|
|
rdf2bin$(X): rdf2bin.$(O) $(LIBS)
|
|
$(CC) $(LDFLAGS) -o rdf2bin$(X) rdf2bin.$(O) $(LIBS)
|
|
rdf2com$(X):
|
|
rm -f rdf2com$(X) && $(LN_S) rdf2bin$(X) rdf2com$(X)
|
|
rdf2ith$(X):
|
|
rm -f rdf2ith$(X) && $(LN_S) rdf2bin$(X) rdf2ith$(X)
|
|
rdf2ihx$(X):
|
|
rm -f rdf2ihx$(X) && $(LN_S) rdf2bin$(X) rdf2ihx$(X)
|
|
rdf2srec$(X):
|
|
rm -f rdf2srec$(X) && $(LN_S) rdf2bin$(X) rdf2srec$(X)
|
|
|
|
rdf2ihx.$(O): rdf2ihx.c
|
|
rdf2bin.$(O): rdf2bin.c
|
|
rdfdump.$(O): rdfdump.c
|
|
rdoff.$(O): rdoff.c rdoff.h
|
|
ldrdf.$(O): ldrdf.c rdoff.h ../nasmlib.h symtab.h collectn.h rdlib.h
|
|
symtab.$(O): symtab.c symtab.h
|
|
collectn.$(O): collectn.c collectn.h
|
|
rdx.$(O): rdx.c rdoff.h rdfload.h symtab.h
|
|
rdfload.$(O): rdfload.c rdfload.h rdoff.h collectn.h symtab.h
|
|
rdlib.$(O): rdlib.c rdlib.h
|
|
rdflib.$(O): rdflib.c
|
|
segtab.$(O): segtab.c
|
|
|
|
clean:
|
|
rm -f *.$(O) *.$(A) $(PROGRAMS)
|
|
|
|
spotless: clean
|
|
rm -f Makefile
|
|
|
|
distclean: spotless
|
|
|
|
install: all
|
|
$(MKDIR) -p $(INSTALLROOT)$(bindir)
|
|
$(INSTALL_PROGRAM) rdfdump$(X) $(INSTALLROOT)$(bindir)/rdfdump$(X)
|
|
$(INSTALL_PROGRAM) ldrdf$(X) $(INSTALLROOT)$(bindir)/ldrdf$(X)
|
|
$(INSTALL_PROGRAM) rdx$(X) $(INSTALLROOT)$(bindir)/rdx$(X)
|
|
$(INSTALL_PROGRAM) rdflib$(X) $(INSTALLROOT)$(bindir)/rdflib$(X)
|
|
$(INSTALL_PROGRAM) rdf2bin$(X) $(INSTALLROOT)$(bindir)/rdf2bin$(X)
|
|
cd $(INSTALLROOT)$(bindir) && rm -f rdf2com$(X) && $(LN_S) rdf2bin$(X) rdf2com$(X)
|
|
cd $(INSTALLROOT)$(bindir) && rm -f rdf2ith$(X) && $(LN_S) rdf2bin$(X) rdf2ith$(X)
|
|
cd $(INSTALLROOT)$(bindir) && rm -f rdf2ihx$(X) && $(LN_S) rdf2bin$(X) rdf2ihx$(X)
|
|
cd $(INSTALLROOT)$(bindir) && rm -f rdf2srec$(X) && $(LN_S) rdf2bin$(X) rdf2srec$(X)
|
|
$(MKDIR) -p $(INSTALLROOT)$(mandir)/man1
|
|
$(INSTALL_DATA) $(srcdir)/*.1 $(INSTALLROOT)$(mandir)/man1/
|