From 8af5f446f310e1754cbe185446698fec38e28fe2 Mon Sep 17 00:00:00 2001 From: tomers Date: Fri, 30 Oct 2009 14:27:16 +0000 Subject: [PATCH] mktccboot: Remove excessive use of defines in Makefile git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23420 a1c6a512-1295-4272-9138-f99709370657 --- rbutil/mktccboot/Makefile | 222 ++++++++++++++++++++++------------------------ 1 file changed, 105 insertions(+), 117 deletions(-) rewrite rbutil/mktccboot/Makefile (61%) diff --git a/rbutil/mktccboot/Makefile b/rbutil/mktccboot/Makefile dissimilarity index 61% index 9399a0c09..3f23e044d 100644 --- a/rbutil/mktccboot/Makefile +++ b/rbutil/mktccboot/Makefile @@ -1,117 +1,105 @@ -# __________ __ ___. -# Open \______ \ ____ ____ | | _\_ |__ _______ ___ -# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / -# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < -# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ -# \/ \/ \/ \/ \/ -# $Id$ -# - -# We use the Telechips code available in the Rockbox tools/ directory -TOOLSDIR=../../tools -CFLAGS := -O -g -W -Wall -Wshadow -pedantic -I$(TOOLSDIR) - -PLAT=tcc - -CC = gcc -MKPLATBOOT=mk$(PLAT)boot -LIB_MKPLATBOOT=lib$(MKPLATBOOT) - -#change for releases -ifndef APPVERSION -APPVERSION=`$(TOOLSDIR)/version.sh` -endif - -ifndef V -SILENT = @ -endif - -ifeq ($(findstring CYGWIN,$(shell uname)),CYGWIN) -OUTPUT=$(MKPLATBOOT).exe -CFLAGS+=-mno-cygwin -else -ifeq ($(findstring MINGW,$(shell uname)),MINGW) -OUTPUT=$(MKPLATBOOT).exe -else -ifeq ($(findstring mingw,$(CC)),mingw) -OUTPUT=$(MKPLATBOOT).exe -else -OUTPUT=$(MKPLATBOOT) -endif -endif -endif - -ifdef RBARCH -CFLAGS += -arch $(RBARCH) -endif - -OUT = $(TARGET_DIR)build$(RBARCH) - -MKPLATBOOT_OBJ=$(OUT)/$(MKPLATBOOT).o -LIBMKPLATBOOT_OBJ=$(OUT)/$(LIB_MKPLATBOOT).o - -all: $(OUTPUT) - -# Dependant modules -TELECHIPS=$(TOOLSDIR)/telechips -TELECHIPS_OBJ=$(TELECHIPS).o - -$(TELECHIPS_OBJ): $(TELECHIPS).[ch] - make -C $(TOOLSDIR) $(TARGET_DIR)telechips.o - -DEPENDANT_OBJS=$(TELECHIPS_OBJ) - -$(MKPLATBOOT_OBJ): $(MKPLATBOOT).[ch] $(DEPENDANT_OBJS) - @echo CC $< - $(SILENT)$(CC) $(CFLAGS) -c -o $(MKPLATBOOT_OBJ) -W -Wall $(MKPLATBOOT).c -DVERSION=\"$(APPVERSION)\" - -$(OUTPUT): $(OUT) $(MKPLATBOOT_OBJ) - @echo CC $< - $(SILENT)$(CC) $(CFLAGS) -o $(OUTPUT) $(MKPLATBOOT_OBJ) $(DEPENDANT_OBJS) - -$(LIBMKPLATBOOT_OBJ): $(MKPLATBOOT_OBJ) - @echo CC $< - $(SILENT)$(CC) $(CFLAGS) -DLIB -c -o $(LIBMKPLATBOOT_OBJ) -W -Wall $(MKPLATBOOT).c - -$(LIB_MKPLATBOOT)$(RBARCH).a: $(OUT) $(LIBMKPLATBOOT_OBJ) - @echo AR $@ - $(SILENT)$(AR) ruc $(TARGET_DIR)$(LIB_MKPLATBOOT)$(RBARCH).a $(LIBMKPLATBOOT_OBJ) - -# some trickery to build ppc and i386 from a single call -ifeq ($(RBARCH),) -$(LIB_MKPLATBOOT)i386.a: - make RBARCH=i386 TARGET_DIR=$(TARGET_DIR) $(LIB_MKPLATBOOT)i386.a - -$(LIB_MKPLATBOOT)ppc.a: - make RBARCH=ppc TARGET_DIR=$(TARGET_DIR) $(LIB_MKPLATBOOT)ppc.a -endif - -$(LIB_MKPLATBOOT)-universal: $(LIB_MKPLATBOOT)i386.a $(LIB_MKPLATBOOT)ppc.a - @echo lipo $(TARGET_DIR)$(LIB_MKPLATBOOT).a - $(SILENT) rm -f $(TARGET_DIR)$(LIB_MKPLATBOOT).a - lipo -create $(TARGET_DIR)$(LIB_MKPLATBOOT)ppc.a $(TARGET_DIR)$(LIB_MKPLATBOOT)i386.a -output $(TARGET_DIR)$(LIB_MKPLATBOOT).a - -clean: - rm -f $(OUTPUT) $(LIB_MKPLATBOOT).o $(TARGET_DIR)$(LIB_MKPLATBOOT)*.a $(MKPLATBOOT).dmg - rm -f $(DEPENDANT_OBJS) - rm -rf build* $(MKPLATBOOT)-* - -$(MKPLATBOOT)-i386: - $(MAKE) RBARCH=i386 - mv $(MKPLATBOOT) $(MKPLATBOOT)-i386 - -$(MKPLATBOOT)-ppc: - make RBARCH=ppc - mv $(MKPLATBOOT) $(MKPLATBOOT)-ppc - -$(MKPLATBOOT)-mac: $(MKPLATBOOT)-i386 $(MKPLATBOOT)-ppc - lipo -create $(MKPLATBOOT)-ppc $(MKPLATBOOT)-i386 -output $(MKPLATBOOT)-mac - -$(MKPLATBOOT).dmg: $(MKPLATBOOT)-mac - mkdir -p $(MKPLATBOOT)-dmg - cp -p $(MKPLATBOOT)-mac $(MKPLATBOOT)-dmg - hdiutil create -srcfolder $(MKPLATBOOT)-dmg $(MKPLATBOOT).dmg - -$(OUT): - @echo MKDIR $(OUT) - $(SILENT)mkdir $(OUT) +# __________ __ ___. +# Open \______ \ ____ ____ | | _\_ |__ _______ ___ +# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# $Id$ +# + +# We use the Telechips code available in the Rockbox tools/ directory +TOOLSDIR=../../tools +CFLAGS := -O -g -W -Wall -Wshadow -pedantic -I$(TOOLSDIR) + +CC = gcc + +# Change for releases +ifndef APPVERSION +APPVERSION=`$(TOOLSDIR)/version.sh` +endif + +ifndef V +SILENT = @ +endif + +ifeq ($(findstring CYGWIN,$(shell uname)),CYGWIN) +OUTPUT=mktccboot.exe +CFLAGS+=-mno-cygwin +else +ifeq ($(findstring MINGW,$(shell uname)),MINGW) +OUTPUT=mktccboot.exe +else +ifeq ($(findstring mingw,$(CC)),mingw) +OUTPUT=mktccboot.exe +else +OUTPUT=mktccboot +endif +endif +endif + +ifdef RBARCH +CFLAGS += -arch $(RBARCH) +endif + +OUT = $(TARGET_DIR)build$(RBARCH) + +all: $(OUTPUT) + +$(TOOLSDIR)/telechips.o: $(TOOLSDIR)/telechips.[ch] + make -C $(TOOLSDIR) $(TARGET_DIR)telechips.o + +$(OUT)/mktccboot.o: mktccboot.[ch] $(TOOLSDIR)/telechips.o + @echo CC $< + $(SILENT)$(CC) $(CFLAGS) -c -o $(OUT)/mktccboot.o -W -Wall mktccboot.c -DVERSION=\"$(APPVERSION)\" + +$(OUTPUT): $(OUT) $(OUT)/mktccboot.o + @echo CC $< + $(SILENT)$(CC) $(CFLAGS) -o $(OUTPUT) $(OUT)/mktccboot.o $(TOOLSDIR)/telechips.o + +$(OUT)/libmktccboot.o: $(OUT)/mktccboot.o + @echo CC $< + $(SILENT)$(CC) $(CFLAGS) -DLIB -c -o $(OUT)/libmktccboot.o -W -Wall mktccboot.c + +libmktccboot$(RBARCH).a: $(OUT) $(OUT)/libmktccboot.o + @echo AR $@ + $(SILENT)$(AR) ruc $(TARGET_DIR)libmktccboot$(RBARCH).a $(OUT)/libmktccboot.o + +# some trickery to build ppc and i386 from a single call +ifeq ($(RBARCH),) +libmktccbooti386.a: + make RBARCH=i386 TARGET_DIR=$(TARGET_DIR) libmktccbooti386.a + +libmktccbootppc.a: + make RBARCH=ppc TARGET_DIR=$(TARGET_DIR) libmktccbootppc.a +endif + +libmktccboot-universal: libmktccbooti386.a libmktccbootppc.a + @echo lipo $(TARGET_DIR)libmktccboot.a + $(SILENT) rm -f $(TARGET_DIR)libmktccboot.a + lipo -create $(TARGET_DIR)libmktccbootppc.a $(TARGET_DIR)libmktccbooti386.a -output $(TARGET_DIR)libmktccboot.a + +clean: + rm -f $(OUTPUT) libmktccboot.o $(TARGET_DIR)libmktccboot*.a mktccboot.dmg + rm -f $(TOOLSDIR)/telechips.o + rm -rf build* mktccboot-* + +mktccboot-i386: + $(MAKE) RBARCH=i386 + mv mktccboot mktccboot-i386 + +mktccboot-ppc: + make RBARCH=ppc + mv mktccboot mktccboot-ppc + +mktccboot-mac: mktccboot-i386 mktccboot-ppc + lipo -create mktccboot-ppc mktccboot-i386 -output mktccboot-mac + +mktccboot.dmg: mktccboot-mac + mkdir -p mktccboot-dmg + cp -p mktccboot-mac mktccboot-dmg + hdiutil create -srcfolder mktccboot-dmg mktccboot.dmg + +$(OUT): + @echo MKDIR $(OUT) + $(SILENT)mkdir $(OUT) + -- 2.11.4.GIT