From e2f48c6667ccc008a4b848b1115a854ca42f2e8b Mon Sep 17 00:00:00 2001 From: John Tsiombikas Date: Thu, 20 May 2021 22:26:19 +0300 Subject: [PATCH] DJGPP cross-build --- .gitignore | 5 ++++- Makefile.dj | 45 ++++++++++++++++++++++++++++++++++++--------- 2 files changed, 40 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index 4b1e283..394db8c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,11 @@ *.o +*.odj *.d *.swp +*.map +*.exe rbench_x11 rbench_fbdev -rbench.exe sinlut.s tools/lutgen +*.LOG diff --git a/Makefile.dj b/Makefile.dj index 00dbd47..549dfc1 100644 --- a/Makefile.dj +++ b/Makefile.dj @@ -1,12 +1,22 @@ src = $(wildcard src/*.c) $(wildcard src/dos/*.c) ssrc = sinlut.s -obj = $(src:.c=.o) $(ssrc:.s=.o) +obj = $(src:.c=.odj) $(ssrc:.s=.odj) dep = $(src:.c=.d) coff = rbench bin = $(coff).exe bin0 = $(coff)0.exe -LUTGEN = tools/lutgen.exe +ifeq ($(findstring COMMAND.COM, $(SHELL)), COMMAND.COM) + host = dos + LUTGEN = tools/lutgen.exe +else + host = unix + TC = i586-pc-msdosdjgpp- + LUTGEN = tools/lutgen +endif + +CC = $(TC)gcc +AS = $(TC)as warn = -pedantic -Wall -Wno-deprecated-declarations dbg = -g @@ -17,24 +27,31 @@ def = -DNO_STDINT_H CFLAGS = -pedantic $(warn) $(dbg) $(opt) $(def) $(inc) -fno-strict-aliasing -MMD LDFLAGS = -Wl,-Map=link.map +$(bin): $(obj) + $(CC) -o $@ $(obj) $(LDFLAGS) + $(bin0): $(bin) exe2coff $< copy /b \djgpp\bin\cwsdstr0.exe+$(coff) $@ -$(bin): $(obj) - $(CC) -o $@ $(obj) $(LDFLAGS) - sinlut.s: $(LUTGEN) $(LUTGEN) >$@ -include $(dep) -include *.d +%.odj: %.c + $(CC) -o $@ $(CFLAGS) -c $< + +%.odj: %.s + $(AS) -o $@ $(ASFLAGS) $< + +ifeq ($(host), dos) .PHONY: clean clean: - del src\*.o - del src\dos\*.o - del *.o + del src\*.odj + del src\dos\*.odj + del *.odj del $(bin) del sinlut.s @@ -43,6 +60,16 @@ cleandep: del src\*.d del src\dos\*.d del *.d +else +.PHONY: clean +clean: + rm -f $(obj) $(bin) + +.PHONY: clean +cleandep: + rm -f $(dep) +endif + . $(LUTGEN): tools/lutgen.c - $(CC) -o $@ $< -lm + cc -o $@ $< -lm -- 1.7.10.4