probleme beim makefile basteln

tmp

Ensign
Registriert
Feb. 2004
Beiträge
253
hey ihr!

und zwar habe ich folgende ordnerstruktur:

hauptordner
|-> ordner A
|-> ordner B
|-> ordner C

in den ordnern A,B,C befinden sich jeweils Makefiles

ich möchte nun im hauptordner ein Makefile anlegen,was make in den jeweiligen ordnern aufruft und somit alles mit einem aufruf kompiliert.

wikipedia hat mir nichts gebracht,obwohls da voll logisch klingt.
könnt ihr mir vlt dabei helfen? eigentlich dürfte das ja nicht so schwer sein?!
 
Was ja geht ist ein lockeres include <anderes_makefile>. Natürlich auch mit absolutem oder relativen Pfadnamen.

Bei uns in der Firma machen wir das so:
Im Hauptmakefile stehen die ganzen Compiler- und Linkerflags, Defines und was man sonst noch so braucht.
In den anderen Makefile steht nur noch welche Dateien zu übersetzen sind. Bezogen aufs jeweilige Unterverzeichnis.
Die anderen Makefiles werden mit erwähntem include eingezogen.
Somit reicht es make nur mit dem Hauptmakefile aufzurufen.
 
naja das problem ist,dass die pfade in den Makefiles der ordner dann nicht mehr stimmen,da sie nicht mehr relativ aus den ordnern gebildet werden,sondern eben aus dem hauptordner heraus.

hier mal die ordner. vlt bekommt ihr es ja hin?
würde mir auf jeden fall ne menge helfen :)

http://tattered.r00lerz.de/download/tmp/stuff/make.zip
 
Oha!
In dem Fall würde ich ein Shellscript erstellen, dass nacheinander einfach make mit den entsprechenden Makefiles aufruft:
Code:
#! /bin/bash

make -f ./satSolver/minisat/core
make -f ./satSolver/minisat/simp
make -f ./satSolver/miraxt
make -f ./satSolver/walksat
 
ich habs nun dank eines tollen tutorials besser hinbekommen :)

DIRS = ./satSolver/minisat/core/ ./satSolver/miraxt/ ./satSolver/walksat/
compile:
for i in $(DIRS); do make -C $$i; done
 
Zurück
Oben