mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-18 08:23:50 +08:00
This is a more workable makefile
From-SVN: r20208
This commit is contained in:
parent
bc516719ec
commit
fb2aebdb81
@ -16,21 +16,28 @@ AG_TEXT = $(SH_TARGET) fixincl.x \
|
|||||||
inclhack.def inclhack.tpl hackshell.tpl fixincl.tpl
|
inclhack.def inclhack.tpl hackshell.tpl fixincl.tpl
|
||||||
TARGETS = $(SH_TARGET) $(BIN_TARGET)
|
TARGETS = $(SH_TARGET) $(BIN_TARGET)
|
||||||
|
|
||||||
default : fixincl.sh
|
default : gen
|
||||||
|
|
||||||
all : $(TARGETS)
|
all : $(TARGETS)
|
||||||
sh : $(SH_TARGET)
|
sh : $(SH_TARGET)
|
||||||
|
gen : $(SH_TARGET) fixincl.x
|
||||||
|
|
||||||
$(OBJ): $(HDR)
|
$(OBJ): $(HDR)
|
||||||
fixincl.o: fixincl.x
|
|
||||||
|
|
||||||
fixincl: $(OBJ)
|
fixincl: $(OBJ)
|
||||||
|
@echo $(CC) -o $@ $(OBJ) $(LIB) ; \
|
||||||
if $(CC) -o $@ $(OBJ) $(LIB) ; then : ; else \
|
if $(CC) -o $@ $(OBJ) $(LIB) ; then : ; else \
|
||||||
rm -f $@ ; (echo "#! /bin/sh" ; echo exit 1 ) > $@ ; \
|
rm -f $@ ; (echo "#! /bin/sh" ; echo exit 1 ) > $@ ; \
|
||||||
chmod 777 $@ ; fi
|
chmod 777 $@ ; fi
|
||||||
|
|
||||||
regex.o: regex.c
|
regex.o: regex.c
|
||||||
$(CC) -g -DSTDC_HEADERS=1 -c regex.c
|
-$(CC) -g -DSTDC_HEADERS=1 -c regex.c
|
||||||
|
|
||||||
|
fixincl.o : fixincl.x fixincl.c
|
||||||
|
-$(CC) $(CFLAGS) -o $@ -c fixincl.c
|
||||||
|
|
||||||
|
server.o : server.c server.h
|
||||||
|
-$(CC) $(CFLAGS) -o $@ -c server.c
|
||||||
|
|
||||||
fixincl.x: fixincl.tpl inclhack.def
|
fixincl.x: fixincl.tpl inclhack.def
|
||||||
@if ( autogen --help > /dev/null 2>&1 ) ; then \
|
@if ( autogen --help > /dev/null 2>&1 ) ; then \
|
||||||
@ -44,25 +51,31 @@ inclhack.sh: inclhack.def inclhack.tpl hackshell.tpl
|
|||||||
autogen inclhack.def ; \
|
autogen inclhack.def ; \
|
||||||
else echo You need to install autogen ; touch $@ ; fi
|
else echo You need to install autogen ; touch $@ ; fi
|
||||||
|
|
||||||
fixincl.sh: inclhack.def inclhack.tpl fixincl inclhack.sh
|
fixincl.sh: inclhack.def inclhack.tpl
|
||||||
@if ( ./fixincl -v > /dev/null 2>&1 ) ; then \
|
@if ( autogen --help > /dev/null 2>&1 ) ; then \
|
||||||
if ( autogen --help > /dev/null 2>&1 ) ; then \
|
|
||||||
echo autogen -DPROGRAM=1 -b fixincl inclhack.def ; \
|
echo autogen -DPROGRAM=1 -b fixincl inclhack.def ; \
|
||||||
autogen -DPROGRAM=1 -b fixincl inclhack.def ; touch $@ ; \
|
autogen -DPROGRAM=1 -b fixincl inclhack.def ; touch $@ ; \
|
||||||
else echo You need to install autogen ; touch $@ ; fi ; \
|
else echo You need to install autogen ; touch $@ ; fi ; \
|
||||||
else cp inclhack.sh $@ ; echo cp inclhack.sh $@ ; fi
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.o fixincl
|
rm -f *.o $(TARGETS) fixincl.x
|
||||||
|
|
||||||
install: fixincl.sh
|
# Ensure all the targets are built. If the program "fixincl"
|
||||||
|
# failed to compile, link or load, then we install the
|
||||||
|
# "inclhack.sh" script. Otherwise, we install that program
|
||||||
|
# plus the wrapper script, "fixincl.sh".
|
||||||
|
#
|
||||||
|
install: $(TARGETS)
|
||||||
@rm -f $(DESTDIR)/fixinc.sh ; \
|
@rm -f $(DESTDIR)/fixinc.sh ; \
|
||||||
|
if ( ./fixincl -v > /dev/null 2>&1 ) ; then \
|
||||||
echo cp fixincl.sh $(DESTDIR)/fixinc.sh ; \
|
echo cp fixincl.sh $(DESTDIR)/fixinc.sh ; \
|
||||||
cp fixincl.sh $(DESTDIR)/fixinc.sh ; \
|
cp fixincl.sh $(DESTDIR)/fixinc.sh ; \
|
||||||
chmod 555 $(DESTDIR)/fixinc.sh
|
chmod 555 $(DESTDIR)/fixinc.sh ; \
|
||||||
@echo check for fixincl copy...
|
rm -f $(DESTDIR)/fixincl ; \
|
||||||
@if ( ./fixincl -v > /dev/null 2>&1 ) ; then \
|
|
||||||
rm -f $(DESTDIR)/fixincl ; \
|
|
||||||
echo cp fixincl $(DESTDIR) ; \
|
echo cp fixincl $(DESTDIR) ; \
|
||||||
cp fixincl $(DESTDIR) ; \
|
cp fixincl $(DESTDIR) ; \
|
||||||
chmod 555 $(DESTDIR)/fixincl ; fi
|
chmod 555 $(DESTDIR)/fixincl ; \
|
||||||
|
else \
|
||||||
|
echo cp inclhack.sh $(DESTDIR)/fixinc.sh ; \
|
||||||
|
cp inclhack.sh $(DESTDIR)/fixinc.sh ; \
|
||||||
|
fi
|
||||||
|
Loading…
Reference in New Issue
Block a user