diff options
Diffstat (limited to 'ubi-utils/Makefile')
| -rw-r--r-- | ubi-utils/Makefile | 126 | 
1 files changed, 68 insertions, 58 deletions
| diff --git a/ubi-utils/Makefile b/ubi-utils/Makefile index 686aa60..307da31 100644 --- a/ubi-utils/Makefile +++ b/ubi-utils/Makefile @@ -1,79 +1,89 @@  # -# This makefile simplifies the build process for a toolchain user. -# A toolchain developer should prefer a manual build process which -# fits to his original needs. +# Makefile for ubi-utils  # -X86_PREFIX?=/usr/local -x86_path=./build_x86 -x86_status=$(x86_path)/config.status +HOST_OS_NAME := $(shell uname -s) +HOST_VERSION_NAME := $(shell uname -r) +BUILD_CPU := $(shell uname -m) +BUILD_OS := $(shell uname -o) -PPC_PREFIX?=/opt/ppcnf/crossroot -ppc_path=./build_ppc -ppc_status=$(ppc_path)/config.status +KERNELHDR := ../include		# mtd-utils private headers +DESTDIR := /usr/local		# default installation +SBINDIR := bin			# default directory for binaries -all: x86 ppc +CC := $(CROSS)gcc +CFLAGS := -I./inc -I./src -I$(KERNELHDR) -O2 -g -Wall -Werror \ +	-Wwrite-strings -W -std=gnu99 \ +        -DHOST_OS_NAME=\"$(HOST_OS_NAME)\" \ +        -DHOST_VERSION_NAME=\"$(HOST_VERSION_NAME)\" \ +	-DBUILD_CPU=\"$(BUILD_CPU)\" -DBUILD_OS=\"$(BUILD_OS)\" -install: install_x86 install_ppc -uninstall: uninstall_x86 uninstall_ppc +PERLPROGS = mkpfi ubicrc32.pl +TARGETS = ubiupdatevol ubimkvol ubirmvol pfiflash pddcustomize ubimirror \ +	bin2nand nand2bin ubigen mkbootenv unubi pfi2bin -install_x86: x86 -	make -C $(x86_path) install +vpath   %.c ./src -install_ppc: ppc  -	make -C $(ppc_path) install +%: %.o +	$(CC) $(LDFLAGS) -g -o $@ $^ +%.o: %.c +	$(CC) $(CFLAGS) -g -c -o $@ $< -g -Wp,-MD,.$(shell basename $<).dep -uninstall_x86: x86 -	make -C $(x86_path) uninstall +all: $(TARGETS) -uninstall_ppc: ppc  -	make -C $(ppc_path) uninstall +IGNORE=${wildcard .*.c.dep} +-include ${IGNORE} +clean: +	rm -rf *.o $(TARGETS) .*.c.dep +ubiupdatevol: ubiupdatevol.o error.o libubi.o libubi_sysfs.o +	$(CC) $(LDFLAGS) -o $@ $^ -x86: $(x86_status) -	make -C $(x86_path) +ubimkvol: ubimkvol.o error.o libubi.o libubi_sysfs.o +	$(CC) $(LDFLAGS) -o $@ $^ -ppc:  $(ppc_status) -	make -C $(ppc_path) +ubirmvol: ubirmvol.o error.o libubi.o libubi_sysfs.o +	$(CC) $(LDFLAGS) -o $@ $^ -$(x86_status): $(x86_path) Makefile.in -	cd $(x86_path) && ./config.status || ../configure \ -				--prefix=$(X86_PREFIX) +pddcustomize: pddcustomize.o error.o libubimirror.o bootenv.o hashmap.o \ +		libubi.o libubi_sysfs.o +	$(CC) $(LDFLAGS) -o $@ $^ -$(ppc_status): $(ppc_path) Makefile.in -	cd $(ppc_path) && ./config.status || ../configure \ -				--build=i686-pc-linux-gnu \ -				--host=ppc-linux \ -				--prefix=$(PPC_PREFIX) \ -				--exec-prefix=$(PPC_PREFIX) +pfiflash: pfiflash.o libpfiflash.o list.o reader.o error.o libubimirror.o \ +		bootenv.o hashmap.o pfi.o libubi.o libubi_sysfs.o +	$(CC) $(LDFLAGS) -o $@ $^ -Makefile.in: Makefile.am -	./bootstrap +ubimirror: ubimirror.o error.o libubimirror.o bootenv.o hashmap.o \ +		libubi.o libubi_sysfs.o +	$(CC) $(LDFLAGS) -o $@ $^ -$(x86_path): -	mkdir -p $(x86_path) +nand2bin: nand2bin.o nandecc.o nandcorr.o +	$(CC) $(LDFLAGS) -o $@ $^ -$(ppc_path): -	mkdir -p $(ppc_path) +bin2nand: bin2nand.o error.o nandecc.o +	$(CC) $(LDFLAGS) -o $@ $^ -clean: -	rm -rf depcomp install-sh missing .deps \ -		config.log config.status \ -		inc/Makefile.in lib/Makefile.in -	find . -type f -name "*~" -print | xargs $(RM) -	rm -f Makefile.in -	rm -f aclocal.m4 -	rm -rf autom4te.cache -	rm -f config.guess -	rm -f config.sub -	rm -f configure -	rm -f depcomp -	rm -f install-sh -	rm -f ltmain.sh -	rm -f missing -	rm -f lib/Makefile.in -	rm -f inc/Makefile.in -	rm -rf $(x86_path) -	rm -rf $(ppc_path) +ubigen: ubigen.o libubigen.o crc32.o +	$(CC) $(LDFLAGS) -o $@ $^ + +mkbootenv: mkbootenv.o bootenv.o hashmap.o error.o +	$(CC) $(LDFLAGS) -o $@ $^ + +unubi: unubi.o crc32.o +	$(CC) $(LDFLAGS) -o $@ $^ + +pfi2bin: pfi2bin.o peb.o error.o list.o crc32.o libubigen.o bootenv.o \ +		hashmap.o reader.o pfi.o +	$(CC) $(LDFLAGS) -o $@ $^ + +install: ${TARGETS} +	mkdir -p ${DESTDIR}/${SBINDIR} +	install -m0755 ${TARGETS} ${DESTDIR}/${SBINDIR}/ +	(cd perl && install ${PERLPROGS} ${DESTDIR}/${SBINDIR}/) + +uninstall: +	for file in ${TARGETS} ${PERLPROGS}; do \ +		$(RM) ${DESTDIR}/${SBINDIR}/$$file; \ +	done | 
