Improve makefile

This commit is contained in:
Baptiste Wicht 2014-02-23 18:18:48 +01:00
parent 4af3126e5d
commit b3152b16ff
9 changed files with 47 additions and 108 deletions

8
.gitignore vendored
View File

@ -15,4 +15,12 @@ programs/shutdown/shutdown
programs/reboot/reboot
programs/stat/stat
programs/cat/cat
programs/which/which
programs/one/one
programs/long/long
programs/hello/hello
programs/loop/loop
programs/keyboard/keyboard
programs/longtwo/longtwo
programs/longone/longone
programs/dist/

View File

@ -1,4 +1,4 @@
.PHONY: default clean force_look
.PHONY: dist default clean force_look
PROGRAMS=one hello long loop longone longtwo keyboard tsh cpuid shutdown reboot args stat cat which
@ -7,87 +7,18 @@ default: dist
tlib/libtlib.a: force_look
cd ../tlib; $(MAKE)
one: force_look tlib/libtlib.a
cd one; $(MAKE) a.out
hello: force_look tlib/libtlib.a
cd hello; $(MAKE) a.out
long: force_look tlib/libtlib.a
cd long; $(MAKE) a.out
longone: force_look tlib/libtlib.a
cd longone; $(MAKE) a.out
longtwo: force_look tlib/libtlib.a
cd longtwo; $(MAKE) a.out
loop: force_look tlib/libtlib.a
cd loop; $(MAKE) a.out
keyboard: force_look tlib/libtlib.a
cd keyboard; $(MAKE) a.out
cpuid: force_look tlib/libtlib.a
cd cpuid; $(MAKE) cpuid
tsh: force_look tlib/libtlib.a
cd tsh; $(MAKE) tsh
reboot: force_look tlib/libtlib.a
cd reboot; $(MAKE) reboot
shutdown: force_look tlib/libtlib.a
cd shutdown; $(MAKE) shutdown
args: force_look tlib/libtlib.a
cd args; $(MAKE) args
stat: force_look tlib/libtlib.a
cd stat; $(MAKE) stat
cat: force_look tlib/libtlib.a
cd cat; $(MAKE) cat
which: force_look tlib/libtlib.a
cd which; $(MAKE) which
dist: $(PROGRAMS)
mkdir -p dist
cp one/a.out dist/one
cp hello/a.out dist/hello
cp long/a.out dist/long
cp longone/a.out dist/longone
cp longtwo/a.out dist/longtwo
cp loop/a.out dist/loop
cp keyboard/a.out dist/keyboard
cp cpuid/cpuid dist/
cp tsh/tsh dist/
cp reboot/reboot dist/
cp shutdown/shutdown dist/
cp args/args dist/
cp stat/stat dist/
cp cat/cat dist/
cp which/which dist/
strip dist/*
force_look:
true
dist: tlib/libtlib.a
$(foreach var,$(PROGRAMS),cd $(var); $(MAKE); cd ..;)
mkdir -p dist
$(foreach var,$(PROGRAMS),cp $(var)/$(var) dist/;)
strip dist/*
clean:
cd one; $(MAKE) clean
cd hello; $(MAKE) clean
cd long;$(MAKE) clean
cd loop; $(MAKE) clean
cd longone; $(MAKE) clean
cd longtwo; $(MAKE) clean
cd keyboard; $(MAKE) clean
cd tsh; $(MAKE) clean
cd cpuid; $(MAKE) clean
cd reboot; $(MAKE) clean
cd shutdown; $(MAKE) clean
cd args; $(MAKE) clean
cd stat; $(MAKE) clean
cd cat; $(MAKE) clean
cd which; $(MAKE) clean
echo $(PROGRAMS_MAKE)
echo $(PROGRAMS_CLEAN)
echo $(PROGRAMS)
$(foreach var,$(PROGRAMS),cd $(var); $(MAKE) clean; cd ..;)
rm -rf dist

View File

@ -1,15 +1,15 @@
.PHONY: default clean
default: a.out
default: hello
include ../../cpp.mk
%.cpp.o: src/%.cpp
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
a.out: main.cpp.o
$(CC) -o a.out main.cpp.o $(PROGRAM_LINK_FLAGS)
hello: main.cpp.o
$(CC) -o hello main.cpp.o $(PROGRAM_LINK_FLAGS)
clean:
rm -f *.cpp.o
rm -rf a.out
rm -rf hello

View File

@ -1,15 +1,15 @@
.PHONY: default clean
default: a.out
default: keyboard
include ../../cpp.mk
%.cpp.o: src/%.cpp
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
a.out: main.cpp.o
$(CC) -o a.out main.cpp.o $(PROGRAM_LINK_FLAGS)
keyboard: main.cpp.o
$(CC) -o keyboard main.cpp.o $(PROGRAM_LINK_FLAGS)
clean:
rm -f *.cpp.o
rm -rf a.out
rm -rf keyboard

View File

@ -1,15 +1,15 @@
.PHONY: default clean
default: a.out
default: long
include ../../cpp.mk
%.cpp.o: src/%.cpp
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
a.out: main.cpp.o
$(CC) -o a.out main.cpp.o $(PROGRAM_LINK_FLAGS)
long: main.cpp.o
$(CC) -o long main.cpp.o $(PROGRAM_LINK_FLAGS)
clean:
rm -f *.cpp.o
rm -rf a.out
rm -rf long

View File

@ -1,15 +1,15 @@
.PHONY: default clean
default: a.out
default: longone
include ../../cpp.mk
%.cpp.o: src/%.cpp
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
a.out: main.cpp.o
$(CC) -o a.out main.cpp.o $(PROGRAM_LINK_FLAGS)
longone: main.cpp.o
$(CC) -o longone main.cpp.o $(PROGRAM_LINK_FLAGS)
clean:
rm -f *.cpp.o
rm -rf a.out
rm -rf longone

View File

@ -1,15 +1,15 @@
.PHONY: default clean
default: a.out
default: longtwo
include ../../cpp.mk
%.cpp.o: src/%.cpp
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
a.out: main.cpp.o
$(CC) -o a.out main.cpp.o $(PROGRAM_LINK_FLAGS)
longtwo: main.cpp.o
$(CC) -o longtwo main.cpp.o $(PROGRAM_LINK_FLAGS)
clean:
rm -f *.cpp.o
rm -rf a.out
rm -rf longtwo

View File

@ -1,15 +1,15 @@
.PHONY: default clean
default: a.out
default: loop
include ../../cpp.mk
%.cpp.o: src/%.cpp
$(CC) $(PROGRAM_FLAGS) $(CPP_FLAGS_64) $(WARNING_FLAGS) -c $< -o $@
a.out: main.cpp.o
$(CC) $(PROGRAM_LINK_FLAGS) $(CPP_FLAGS_64) -o a.out main.cpp.o
loop: main.cpp.o
$(CC) $(PROGRAM_LINK_FLAGS) $(CPP_FLAGS_64) -o loop main.cpp.o
clean:
rm -f *.cpp.o
rm -rf a.out
rm -rf loop

View File

@ -1,15 +1,15 @@
.PHONY: default clean
default: a.out
default: one
include ../../cpp.mk
%.cpp.o: src/%.cpp
$(CC) -c $< -o $@ $(PROGRAM_FLAGS)
a.out: main.cpp.o
$(CC) -o a.out main.cpp.o $(PROGRAM_LINK_FLAGS)
one: main.cpp.o
$(CC) -o one main.cpp.o $(PROGRAM_LINK_FLAGS)
clean:
rm -f *.cpp.o
rm -rf a.out
rm -rf one