scc

A fork of https://git.simple-cc.org/scc/ for Qute

git clone https://git.8pit.net/scc.git

 1#!/bin/sh
 2
 3trap 'rm -f $tmp1' EXIT
 4trap 'exit $?' HUP INT TERM
 5
 6tmp1=tmp1.$$
 7
 8unset MAKEFLAGS
 9
10($EXEC scc make -pf - all | grep -v MAKE > $tmp1 2>&1) <<'EOF'
11all:
12	@echo hello
13EOF
14
15diff -u $tmp1 - <<'EOF'
16FC = fort77
17YFLAGS = 
18ARFLAGS = -rv
19LDFLAGS = 
20LEX = lex
21CFLAGS = -O1
22YACC = yacc
23CC = c99
24LFLAGS = 
25AR = ar
26SHELL = /bin/sh
27FFLAGS = -O1
28.f.a:
29	${FC} -c ${FFLAGS} $<
30	${AR} ${ARFLAGS} $@ $*.o
31	rm -f $*.o
32
33.l.o:
34	${LEX} ${LFLAGS} $<
35	${CC} ${CFLAGS} -c lex.yy.c
36	rm -f lex.yy.c
37	mv lex.yy.o $@
38
39.c.a:
40	${CC} -c ${CFLAGS} $<
41	${AR} ${ARFLAGS} $@ $*.o
42	rm -f $*.o
43
44.c:
45	${CC} ${CFLAGS} ${LDFLAGS} -o $@ $<
46
47.c.o:
48	${CC} ${CFLAGS} -c $<
49
50.l.c:
51	${LEX} ${LFLAGS} $<
52	mv lex.yy.c $@
53
54.f.o:
55	${FC} ${FFLAGS} -c $<
56
57.f:
58	${FC} ${FFLAGS} ${LDFLAGS} -o $@ $<
59
60.y.o:
61	${YACC} ${YFLAGS} $<
62	${CC} ${CFLAGS} -c y.tab.c
63	rm -f y.tab.c
64	mv y.tab.o $@
65
66.y.c:
67	${YACC} ${YFLAGS} $<
68	mv y.tab.c $@
69
70.SUFFIXES: .o .c .y .l .a .sh .f
71
72all:
73	@echo hello
74
75.sh:
76	cp $< $@
77	chmod a+x $@
78
79EOF