d577781c36
* fixinc/Makefile.in: Set SHELL. * fixinc/fixincl.c (fix_with_system): Quote file names before passing them to shell. * Makefile.in: Use fix-header$(build_exeext) instead of fix-header. From-SVN: r40561
135 lines
3.7 KiB
Makefile
135 lines
3.7 KiB
Makefile
# Makefile for GNU compilers.
|
||
#
|
||
# Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
|
||
|
||
#This file is part of GNU CC.
|
||
|
||
#GNU CC is free software; you can redistribute it and/or modify
|
||
#it under the terms of the GNU General Public License as published by
|
||
#the Free Software Foundation; either version 2, or (at your option)
|
||
#any later version.
|
||
|
||
#GNU CC is distributed in the hope that it will be useful,
|
||
#but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
#GNU General Public License for more details.
|
||
|
||
#You should have received a copy of the GNU General Public License
|
||
#along with GNU CC; see the file COPYING. If not, write to
|
||
#the Free Software Foundation, 59 Temple Place - Suite 330,
|
||
#Boston, MA 02111-1307, USA.
|
||
|
||
# The makefile built from this file lives in the fixinc subdirectory.
|
||
# Its purpose is to build the any-platforms fixinc.sh script.
|
||
|
||
SHELL=/bin/sh
|
||
|
||
FL_LIST = $(CFLAGS) $(CPPFLAGS) $(WARN_CFLAGS)
|
||
FIXINC_DEFS = -DIN_GCC -DHAVE_CONFIG_H $(FL_LIST) $(INCLUDES)
|
||
|
||
# Directory where sources are, from where we are.
|
||
srcdir = @srcdir@
|
||
VPATH = $(srcdir)
|
||
subdir = fixinc
|
||
|
||
# End of variables for you to override.
|
||
|
||
default : all
|
||
|
||
# Now figure out from those variables how to compile and link.
|
||
|
||
# Specify the directories to be searched for header files.
|
||
# Both . and srcdir are used, in that order.
|
||
#
|
||
INCLUDES = -I. -I.. -I$(srcdir) -I$(srcdir)/.. \
|
||
-I$(srcdir)/../config -I$(srcdir)/../../include
|
||
|
||
# Always use -I$(srcdir)/config when compiling.
|
||
.c.o:
|
||
$(CC) -c $(FIXINC_DEFS) $<
|
||
|
||
# The only suffixes we want for implicit rules are .c and .o.
|
||
.SUFFIXES:
|
||
.SUFFIXES: .c .o
|
||
|
||
#
|
||
|
||
## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||
##
|
||
## Makefile for constructing the "best" include fixer we can
|
||
##
|
||
## # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
||
|
||
LIBERTY = ../../libiberty/libiberty.a
|
||
|
||
ALLOBJ = fixincl.o fixtests.o fixfixes.o server.o procopen.o \
|
||
gnu-regex.o fixlib.o
|
||
|
||
TESTOBJ = fixincl.o fixlib.o fixtests.o gnu-regex.o
|
||
FIXOBJ = fixfixes.o fixlib.o gnu-regex.o
|
||
|
||
HDR = server.h gnu-regex.h fixlib.h machname.h
|
||
FI = fixincl@build_exeext@
|
||
AF = applyfix@build_exeext@
|
||
|
||
all : $(TARGETS)
|
||
gen : $(srcdir)/fixincl.x
|
||
|
||
oneprocess : full-stamp
|
||
twoprocess : test-stamp $(AF)
|
||
|
||
full-stamp : $(ALLOBJ) $(LIBERTY)
|
||
$(CC) $(FIXINC_DEFS) $(LDFLAGS) -o $(FI) $(ALLOBJ) $(LIBERTY)
|
||
touch $@
|
||
|
||
test-stamp : $(TESTOBJ) $(LIBERTY)
|
||
$(CC) $(FIXINC_DEFS) $(LDFLAGS) -o $(FI) $(TESTOBJ) $(LIBERTY)
|
||
touch $@
|
||
|
||
$(AF): $(FIXOBJ) $(LIBERTY)
|
||
$(CC) $(FIXINC_DEFS) $(LDFLAGS) -o $@ $(FIXOBJ) $(LIBERTY)
|
||
|
||
$(ALLOBJ) : $(HDR)
|
||
fixincl.o : fixincl.c $(srcdir)/fixincl.x
|
||
fixtests.o : fixtests.c
|
||
fixfixes.o : fixfixes.c $(srcdir)/fixincl.x
|
||
server.o : server.c
|
||
procopen.o : procopen.c
|
||
gnu-regex.o : gnu-regex.c
|
||
fixlib.o : fixlib.c
|
||
|
||
# 'machname.h' is built in the build directory.
|
||
# 'fixincl.x' in the source dir.
|
||
#
|
||
machname.h: ../specs
|
||
$(SHELL) $(srcdir)/genfixes $@
|
||
|
||
$(srcdir)/fixincl.x: fixincl.tpl inclhack.def
|
||
cd $(srcdir) ; $(SHELL) ./genfixes $@
|
||
|
||
clean:
|
||
rm -f *.o *-stamp $(AF) $(FI) machname.h *~
|
||
|
||
maintainer-clean : clean
|
||
rm -f $(srcdir)/fixincl.x
|
||
|
||
# Build the executable and copy up into gcc dir.
|
||
# We still copy the script because we still have alternative scripts.
|
||
#
|
||
install-bin : $(TARGETS)
|
||
./fixincl -v
|
||
@if [ -f ../fixinc.sh ] ; then rm -f ../fixinc.sh || \
|
||
mv -f ../fixinc.sh ../fixinc.sh.$$ || exit 1 ; else : ; fi
|
||
@cp $(srcdir)/fixincl.sh ../fixinc.sh
|
||
chmod 755 ../fixinc.sh
|
||
|
||
Makefile: Makefile.in ../config.status
|
||
cd .. \
|
||
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \
|
||
$(SHELL) ./config.status
|
||
|
||
check : $(TARGETS)
|
||
autogen -T $(srcdir)/check.tpl $(srcdir)/inclhack.def
|
||
$(SHELL) ./check.sh $(srcdir)/tests/base
|
||
@rm -f ./check.sh
|