X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;ds=sidebyside;f=simavr%2FMakefile;h=d8058207057509525ffdf8dd9f5d4f523850320d;hb=8633f5b781376d975910e01d01c1046d5be7da3e;hp=f701b0b9fcf3c53c8a978392c1a35611991304c6;hpb=4f0e56559c96971c530b5b663bbcdbc2b3fdb16c;p=simavr diff --git a/simavr/Makefile b/simavr/Makefile index f701b0b..d805820 100644 --- a/simavr/Makefile +++ b/simavr/Makefile @@ -16,13 +16,17 @@ # You should have received a copy of the GNU General Public License # along with simavr. If not, see . -SIMAVR_VERSION = ${shell git tag |tail -1|sed 's/[^0-9]*//'} +SHELL := ${shell which bash} +SIMAVR_VERSION := ${shell \ + { git log -1 --tags --simplify-by-decoration --pretty="format:%d"|\ + sed -e 's/[\(\) ]//g'; } || \ + echo "unknown" } SIMAVR_REVISION = 2 target = run_avr CFLAGS += -Werror -# tracing id useful especialy if you develop simavr core. +# tracing is useful especialy if you develop simavr core. # it otherwise eat quite a bit of few cycles, even disabled #CFLAGS += -DCONFIG_SIMAVR_TRACE=1 @@ -30,9 +34,9 @@ all: obj config libsimavr ${target} include ../Makefile.common -cores = ${wildcard cores/*.c} -sim = ${wildcard sim/sim_*.c} ${wildcard sim/avr_*.c} -sim_o = ${patsubst sim/%.c, ${OBJ}/%.o, ${sim}} +cores := ${wildcard cores/*.c} +sim := ${wildcard sim/sim_*.c} ${wildcard sim/avr_*.c} +sim_o := ${patsubst sim/%.c, ${OBJ}/%.o, ${sim}} VPATH = cores VPATH += sim @@ -40,7 +44,6 @@ VPATH += sim IPATH = sim IPATH += . IPATH += ../../shared -IPATH += ../include # # Static library @@ -80,18 +83,21 @@ ${target} : ${OBJ}/${target}.elf clean: clean-${OBJ} rm -rf ${target} *.a *.so + rm -f sim_core_*.h DESTDIR = /usr/local PREFIX = ${DESTDIR} install : all $(MKDIR) $(DESTDIR)/include/simavr/avr - $(INSTALL) sim/*.h $(DESTDIR)/include/simavr/ - $(INSTALL) sim_core_*.h $(DESTDIR)/include/simavr/ - $(INSTALL) ../include/*.h $(DESTDIR)/include/simavr/avr/ + $(INSTALL) -m644 sim/*.h $(DESTDIR)/include/simavr/ + $(INSTALL) -m644 sim_core_*.h $(DESTDIR)/include/simavr/ + $(INSTALL) -m644 sim/avr/*.h $(DESTDIR)/include/simavr/avr/ $(MKDIR) $(DESTDIR)/lib $(INSTALL) ${OBJ}/libsimavr.a $(DESTDIR)/lib/ $(MKDIR) $(DESTDIR)/lib/pkgconfig/ + sed -e "s|PREFIX|${PREFIX}|g" -e "s|VERSION|${SIMAVR_VERSION}|g" \ + simavr-avr.pc >$(DESTDIR)/lib/pkgconfig/simavr-avr.pc sed -e "s|PREFIX|${PREFIX}|g" -e "s|VERSION|${SIMAVR_VERSION}|g" \ simavr.pc >$(DESTDIR)/lib/pkgconfig/simavr.pc ifeq (${shell uname}, Linux) @@ -107,7 +113,7 @@ endif # in simavr officialy, this section shall diseapear debian: rm -rf /tmp/simavr-tmp && mkdir -p /tmp/simavr-tmp/usr && \ - make install DESTDIR=/tmp/simavr-tmp/usr && \ + make cleam; make install DESTDIR=/tmp/simavr-tmp/usr RELEASE=1 && \ (cd /tmp/simavr-tmp && \ fpm -s dir -t deb -C /tmp/simavr-tmp -n libsimavr -v $(SIMAVR_VERSION) \ --iteration $(SIMAVR_REVISION) \ @@ -158,6 +164,7 @@ sim_core_config.h ${OBJ}/cores.deps: $(cores) Makefile done ; \ ( printf "// Autogenerated do not edit\n"; \ printf "#ifndef __SIM_CORE_CONFIG_H__\n#define __SIM_CORE_CONFIG_H__\n\n"; \ + printf "#define CONFIG_SIMAVR_VERSION \"${SIMAVR_VERSION}\"\n"; \ printf "$$conf\n"; \ printf "#endif\n"; \ ) >sim_core_config.h