1 # Makefile for GNU CHILL compiler runtime library.
2 # Copyright (C) 1987, 88, 90-94, 1998 Free Software Foundation, Inc.
4 #This file is part of GNU CC.
6 #GNU CC is free software; you can redistribute it and/or modify
7 #it under the terms of the GNU General Public License as published by
8 #the Free Software Foundation; either version 2, or (at your option)
11 #GNU CC is distributed in the hope that it will be useful,
12 #but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 #GNU General Public License for more details.
16 #You should have received a copy of the GNU General Public License
17 #along with GNU CC; see the file COPYING. If not, write to
18 #the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
20 # This was cribbed from the libf2c, libiberty and libstdc++ Makefile.in
21 # files. Some of this stuff may be unnecessary and worthless.
25 #### Start of system configuration section. ####
30 exec_prefix = @exec_prefix@
31 target_alias = @target_alias@
32 gcc_version = @gcc_version@
33 gcc_version_trigger = @gcc_version_trigger@
35 libdir = $(exec_prefix)/lib
36 libsubdir = $(libdir)/gcc-lib/$(target_alias)/$(gcc_version)
38 # Multilib support variables.
46 # Not configured per top-level version, since that doesn't get passed
47 # down at configure time, but overrridden by the top-level install
50 INSTALL_PROGRAM = @INSTALL_PROGRAM@
51 INSTALL_DATA = @INSTALL_DATA@
60 ALL_CFLAGS = -I. -I$(srcdir) $(CPPFLAGS) $(DEFS) $(CFLAGS)
66 $(CC) -c $(ALL_CFLAGS) $(INCLUDES) $<
68 # Lists of required functions for each archive.
70 LIBOBJS1 = allgmem.o allmem.o allocate.o cause.o exhstack.o exh.o retmem.o \
71 unhex.o unhex1.o rtsdummy.o terminate.o
73 IOOBJS = basicio.o chillstdio.o delete.o eoln.o existing.o format.o getassoc.o \
74 gettextaccess.o gettextindex.o gettextrecord.o getusage.o \
75 indexable.o ioerror.o isassociated.o outoffile.o readable.o \
76 readrecord.o sequencible.o settextaccess.o settextindex.o \
77 settextrecord.o variable.o writeable.o writerecord.o
79 PSOBJS = andps.o cardps.o concatps.o copyps.o diffps.o eqps.o ffsetclrps.o \
80 ffsetps.o flsetclrps.o flsetps.o inbitstr.o inps.o leps.o ltps.o \
81 neps.o notps.o orps.o setbitps.o setbits.o sliceps.o xorps.o
83 STROBJS = concatstr.o eqstr.o ltstr.o memmove.o
85 TIMEOBJS = abstime.o inttime.o waituntil.o remaintime.o convdurrtstime.o \
88 TASKOBJS = continue.o delaycase.o printbuffer.o printevent.o queuelength.o \
89 sendbuffer.o waitbuffer.o
91 OBJS = $(LIBOBJS1) $(IOOBJS) $(PSOBJS) $(STROBJS) $(TIMEOBJS) $(TASKOBJS)
94 $(AR) $(AR_FLAGS) $@ $(OBJS)
97 $(PSOBJS): $(srcdir)/powerset.h
98 librmt.o: $(srcdir)/rtltypes.h
99 chillrt0.o: $(srcdir)/rtltypes.h $(srcdir)/iomodes.h $(srcdir)/auxtypes.h
100 $(LIBOBJS1): $(srcdir)/rtltypes.h
101 $(TIMEOBJS): $(srcdir)/rtltypes.h $(srcdir)/rts.h
102 $(TASKOBJS): $(srcdir)/rts.h $(srcdir)/rtltypes.h
103 $(IOOBJS): $(srcdir)/fileio.h $(srcdir)/bitstring.h $(srcdir)/auxtypes.h \
104 $(srcdir)/iomodes.h $(srcdir)/format.h $(srcdir)/ioerror.h
106 # Flags to pass to a recursive make.
109 "AR_FLAGS=$(AR_FLAGS)" \
112 "LIBCFLAGS=$(LIBCFLAGS)" \
113 "EXTRA_OFILES=$(EXTRA_OFILES)" \
114 "HDEFINES=$(HDEFINES)" \
115 "INSTALL=$(INSTALL)" \
116 "INSTALL_DATA=$(INSTALL_DATA)" \
117 "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
118 "LDFLAGS=$(LDFLAGS)" \
119 "LOADLIBES=$(LOADLIBES)" \
120 "PICFLAG=$(PICFLAG)" \
124 all: chillrt0.o libchill.a
125 @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=all
127 Makefile: Makefile.in config.status
128 $(SHELL) config.status
130 config.status: configure
132 CONFIG_SITE=no-such-file CC='$(CC)' AR='$(AR)' CFLAGS='$(CFLAGS)' \
133 CPPFLAGS='$(CPPFLAGS)' $(SHELL) config.status --recheck
135 ${srcdir}/configure: configure.in
137 cd ${srcdir} && autoconf
140 $(INSTALL_DATA) libchill.a $(libsubdir)$(MULTISUBDIR)/libchill.a.n
141 $(RANLIB) $(libsubdir)$(MULTISUBDIR)/libchill.a.n
142 mv $(libsubdir)$(MULTISUBDIR)/libchill.a.n $(libsubdir)$(MULTISUBDIR)/libchill.a
143 $(INSTALL_DATA) chillrt0.o $(libsubdir)$(MULTISUBDIR)/chillrt0.o
144 @rootme=`pwd`/ ; export rootme ; \
145 $(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install
148 check uninstall install-strip dist installcheck installdirs:
152 @$(MULTICLEAN) multi-clean DO=mostlyclean
156 @$(MULTICLEAN) multi-clean DO=clean
159 @$(MULTICLEAN) multi-clean DO=distclean
160 rm -f config.cache config.status Makefile configure
162 maintainer-clean realclean: distclean
164 .PHONY: mostlyclean clean distclean maintainer-clean all check uninstall \
165 install-strip dist installcheck installdirs