Hallo,
da häng ich mich doch gleich mit dran, wenn so ein Thema schonmal offen
ist:
Ich habe ein ähnliches Problem, ich will eine Initialisierung meines
verwendeten Controllers vornehmen. Dazu will ich über eine Art
"Case-Struktur" entscheiden, welcher Controller gewählt wurde und nur
den dafür zutreffenden Code compilieren lassen. Die restlichen Cases
brauch ich aber ja nicht im Code, würde nur Platz verschwenden.
Nun dachte ich an eine Bibliothek, die ich dann ins eigentliche Programm
einbinde. Im Hauptprogramm wird dann beispielsweise über
der Controller festgelegt. In der Bibliothek würde ich dann - wie oben
beschrieben - über ifdefs den linker entscheiden lassen, welchen
Init-Code er compiliert. Aber das kann doch unglaublich umfangreich
werden, oder nicht?
Jetzt hab ich aber mit C leider noch nicht allzu große Erfahrung und
frage mich, ob das überhaupt Funktioniert bzw. guter Stil ist, oder ob
man besser anders vorgeht. Könnte man das ganze auch über ein Makefile
lösen und wenn, wie sollte man da am Besten vorgehen? Ich habe schon
einige Beispiele über Makefiles gelesen (u. a. auch den Exkurs im
GCC-Tutorial), aber bedingte Compilierungen hab ich da nicht gefunden.
Viele Grüße und Danke für eure Vorschläge!
Sven