- Verzeichnistiefe und maximale Anzahl an Dateien über Parameter steuerbar - weitere Features implementiert wie Laufzeitmessung
40 lines
936 B
Makefile
40 lines
936 B
Makefile
# Makefile – Buildsystem für scanner.exe unter MSVC
|
||
# Aufruf über build.cmd (ruft vcvars64.bat auf) → dann make
|
||
|
||
# Zentrale Konfiguration laden
|
||
include Makefile.config
|
||
|
||
# Standardziel
|
||
all: $(EXE)
|
||
|
||
# ---- Kompilieren der Quellcodedateien ----
|
||
|
||
# main.c → main.obj
|
||
$(OUTDIR)\main.obj: $(SRCDIR)\main.c
|
||
@if not exist $(OUTDIR) mkdir $(OUTDIR)
|
||
$(CC) $(CFLAGS) /c /Fo:$@ $<
|
||
|
||
# app.c → app.obj
|
||
$(OUTDIR)\app.obj: $(SRCDIR)\app.c
|
||
$(CC) $(CFLAGS) /c /Fo:$@ $<
|
||
|
||
# scanner_config.c → scanner_config.obj
|
||
$(OUTDIR)\scanner_config.obj: $(SRCDIR)\scanner_config.c
|
||
$(CC) $(CFLAGS) /c /Fo:$@ $<
|
||
|
||
# Ressourcen-Datei → version.res
|
||
$(RES): $(RESDIR)\version.rc
|
||
$(RC) /nologo /fo $@ $<
|
||
|
||
# ---- Linken der Executable ----
|
||
|
||
# Alle Objektdateien + Ressourcen → scanner.exe
|
||
$(EXE): $(OBJ) $(RES)
|
||
$(LINK) $(LDFLAGS) $(OBJ) $(RES)
|
||
|
||
# ---- Aufräumen ----
|
||
|
||
clean:
|
||
@if exist $(OUTDIR) del /Q $(OUTDIR)\*.*
|
||
@if exist vc140.pdb del vc140.pdb
|