diff options
| -rw-r--r-- | configure.ac | 17 | ||||
| -rw-r--r-- | src/easymini-v1.0/Makefile | 4 | ||||
| -rw-r--r-- | src/lpc/Makefile-flash.defs | 43 | ||||
| -rw-r--r-- | src/lpc/Makefile-lpc.defs | 44 | ||||
| -rw-r--r-- | src/lpc/Makefile.defs | 36 | ||||
| -rw-r--r-- | src/lpcxpresso/Makefile | 2 | ||||
| -rw-r--r-- | src/megadongle-v0.1/Makefile | 2 | ||||
| -rw-r--r-- | src/stm-demo/Makefile | 2 | ||||
| -rw-r--r-- | src/stm-flash/Makefile | 2 | ||||
| -rw-r--r-- | src/stm/Makefile-flash.defs | 6 | ||||
| -rw-r--r-- | src/stm/Makefile.defs | 6 | ||||
| -rw-r--r-- | src/telegps-v0.1/Makefile | 2 | ||||
| -rw-r--r-- | src/telegps-v0.3/Makefile | 2 | ||||
| -rw-r--r-- | src/telelco-v0.1/Makefile | 2 | ||||
| -rw-r--r-- | src/telelco-v0.2/Makefile | 2 | ||||
| -rw-r--r-- | src/telemega-v0.1/Makefile | 2 | ||||
| -rw-r--r-- | src/telemega-v0.3/Makefile | 2 | ||||
| -rw-r--r-- | src/telemetrum-v2.0/Makefile | 2 | ||||
| -rw-r--r-- | src/telescience-v0.2/Makefile | 2 | 
19 files changed, 83 insertions, 97 deletions
diff --git a/configure.ac b/configure.ac index de344335..8024b7c6 100644 --- a/configure.ac +++ b/configure.ac @@ -242,22 +242,35 @@ AC_SUBST(ARM_CC)  if test "x$HAVE_ARM_CC" = "xyes"; then  	save_CC="$CC"  	save_CFLAGS="$CFLAGS" +	save_LIBS="$LIBS"  	CC="$ARM_CC"  	CFLAGS="-mthumb -mcpu=cortex-m0" +	LIBS="-ffreestanding -nostdlib"  	AC_LANG_PUSH([C])  	AC_MSG_CHECKING([if ]$ARM_CC[ supports cortex-m0])  	AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int i;])],  			  [HAVE_ARM_M0_CC=yes],  			  [HAVE_ARM_M0_CC=no]) -        AC_MSG_RESULT([$HAVE_ARM_M0]) +        AC_MSG_RESULT([$HAVE_ARM_M0_CC]) + +	AC_CHECK_LIB(pdclib-cortex-m0,memcpy, +		     [], +		     [HAVE_ARM_M0_CC=no]) +  	CFLAGS="-mthumb -mcpu=cortex-m3"  	AC_MSG_CHECKING([if ]$ARM_CC[ supports cortex-m3])  	AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int i;])],  			  [HAVE_ARM_M3_CC=yes],  			  [HAVE_ARM_M3_CC=no]) -        AC_MSG_RESULT([$HAVE_ARM_M3]) +        AC_MSG_RESULT([$HAVE_ARM_M3_CC]) + +	AC_CHECK_LIB(pdclib-cortex-m3,memcpy, +		     [], +		     [HAVE_ARM_M3_CC=no]) +  	AC_LANG_POP([C]) +	LIBS="$save_LIBS"  	CFLAGS="$save_CFLAGS"  	CC="$save_CC"  else diff --git a/src/easymini-v1.0/Makefile b/src/easymini-v1.0/Makefile index ec305c94..6ab79425 100644 --- a/src/easymini-v1.0/Makefile +++ b/src/easymini-v1.0/Makefile @@ -60,10 +60,8 @@ OBJ=$(SRC:.c=.o)  all: $(PROG) -LDFLAGS=-L../lpc -Wl,-Taltos.ld -  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ao_product.h: ao-make-product.5c ../Version  	$(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@ diff --git a/src/lpc/Makefile-flash.defs b/src/lpc/Makefile-flash.defs index ab7181b9..bb90b0d7 100644 --- a/src/lpc/Makefile-flash.defs +++ b/src/lpc/Makefile-flash.defs @@ -1,39 +1,4 @@ -vpath % $(TOPDIR)/lpc:$(TOPDIR)/product:$(TOPDIR)/drivers:$(TOPDIR)/core:$(TOPDIR)/util:$(TOPDIR) -vpath ao-make-product.5c $(TOPDIR)/util - -.SUFFIXES: .elf .ihx - -.elf.ihx: -	objcopy -O ihex $*.elf $@ - - -ifndef VERSION -include $(TOPDIR)/Version -endif -include $(TOPDIR)/Makedefs - -CC=$(ARM_CC) -SAT=/opt/cortex -SAT_CLIB=$(SAT)/lib/pdclib-cortex-m0.a -SAT_CFLAGS=-I$(SAT)/include - -AO_CFLAGS=-I. -I$(TOPDIR)/lpc -I$(TOPDIR)/core -I$(TOPDIR)/drivers -I$(TOPDIR)/product -I$(TOPDIR) -STM_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m0 -mthumb -ffreestanding -nostdlib $(AO_CFLAGS) $(SAT_CFLAGS) - -LDFLAGS=-L$(TOPDIR)/lpc -Wl,-Taltos-loader.ld - -NICKLE=nickle - -V=0 -# The user has explicitly enabled quiet compilation. -ifeq ($(V),0) -quiet = @printf "  $1 $2 $@\n"; $($1) -endif -# Otherwise, print the full command line. -quiet ?= $($1) - -.c.o: -	$(call quiet,CC) -c $(CFLAGS) -o $@ $< +include $(TOPDIR)/lpc/Makefile-lpc.defs  INC = \  	ao.h \ @@ -68,13 +33,15 @@ PRODUCT=AltosFlash-$(VERSION)  PRODUCT_DEF=-DALTOS_FLASH  IDPRODUCT=0x000a -CFLAGS = $(PRODUCT_DEF) $(STM_CFLAGS) -g -Os +CFLAGS = $(PRODUCT_DEF) $(LPC_CFLAGS) -g -Os + +LDFLAGS=$(CFLAGS) -L$(TOPDIR)/lpc -Wl,-Taltos-loader.ld  PROGNAME=altos-flash  PROG=$(HARDWARE)-$(PROGNAME)-$(VERSION).elf  $(PROG): Makefile $(OBJ) altos-loader.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ao_product.h: ao-make-product.5c $(TOPDIR)/Version  	$(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@ diff --git a/src/lpc/Makefile-lpc.defs b/src/lpc/Makefile-lpc.defs new file mode 100644 index 00000000..32a02a4c --- /dev/null +++ b/src/lpc/Makefile-lpc.defs @@ -0,0 +1,44 @@ +ifndef TOPDIR +TOPDIR=.. +endif + +include $(TOPDIR)/Makedefs + +vpath % $(TOPDIR)/lpc:$(TOPDIR)/product:$(TOPDIR)/drivers:$(TOPDIR)/core:$(TOPDIR)/util:$(TOPDIR)/kalman:$(TOPDIR/aes):$(TOPDIR) +vpath make-altitude $(TOPDIR)/util +vpath make-kalman $(TOPDIR)/util +vpath kalman.5c $(TOPDIR)/kalman +vpath kalman_filter.5c $(TOPDIR)/kalman +vpath load_csv.5c $(TOPDIR)/kalman +vpath matrix.5c $(TOPDIR)/kalman +vpath ao-make-product.5c $(TOPDIR)/util + +.SUFFIXES: .elf .ihx + +.elf.ihx: +	objcopy -O ihex $*.elf $@ + + +ifndef VERSION +include $(TOPDIR)/Version +endif + +CC=$(ARM_CC) + +AO_CFLAGS=-I. -I$(TOPDIR)/lpc -I$(TOPDIR)/core -I$(TOPDIR)/drivers -I$(TOPDIR)/product -I$(TOPDIR) +LPC_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m0 -mthumb -ffreestanding -nostdlib $(AO_CFLAGS) + +NICKLE=nickle + +LIBS=-lpdclib-cortex-m0 -lgcc + +V=0 +# The user has explicitly enabled quiet compilation. +ifeq ($(V),0) +quiet = @printf "  $1 $2 $@\n"; $($1) +endif +# Otherwise, print the full command line. +quiet ?= $($1) + +.c.o: +	$(call quiet,CC) -c $(CFLAGS) -o $@ $< diff --git a/src/lpc/Makefile.defs b/src/lpc/Makefile.defs index d541230a..b6d739c2 100644 --- a/src/lpc/Makefile.defs +++ b/src/lpc/Makefile.defs @@ -1,43 +1,11 @@ -vpath % ../lpc:../product:../drivers:../core:../util:../kalman:../aes:.. -vpath make-altitude ../util -vpath make-kalman ../util -vpath kalman.5c ../kalman -vpath kalman_filter.5c ../kalman -vpath load_csv.5c ../kalman -vpath matrix.5c ../kalman -vpath ao-make-product.5c ../util -  ifndef TOPDIR  TOPDIR=..  endif -ifndef VERSION -include $(TOPDIR)/Version -endif +include $(TOPDIR)/lpc/Makefile-lpc.defs  include $(TOPDIR)/Makedefs -CC=$(ARM_CC) -SAT=/opt/cortex -SAT_CLIB=$(SAT)/lib/pdclib-cortex-m0.a -SAT_CFLAGS=-I$(SAT)/include - -AO_CFLAGS=-I. -I$(TOPDIR)/lpc -I$(TOPDIR)/core -I$(TOPDIR)/drivers -I$(TOPDIR) -LPC_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m0 -mthumb -ffreestanding -nostdlib $(AO_CFLAGS) $(SAT_CFLAGS) - -LDFLAGS=$(LPC_CFLAGS) -L$(TOPDIR)/stm -Wl,-Taltos.ld - -NICKLE=nickle - -V=0 -# The user has explicitly enabled quiet compilation. -ifeq ($(V),0) -quiet = @printf "  $1 $2 $@\n"; $($1) -endif -# Otherwise, print the full command line. -quiet ?= $($1) - -.c.o: -	$(call quiet,CC) -c $(CFLAGS) $< +LDFLAGS=$(CFLAGS) -L$(TOPDIR)/lpc -Wl,-Taltos.ld  ao_serial_lpc.h: $(TOPDIR)/lpc/baud_rate ao_pins.h  	nickle $(TOPDIR)/lpc/baud_rate `awk '/AO_LPC_CLKOUT/{print $$3}' ao_pins.h` > $@ diff --git a/src/lpcxpresso/Makefile b/src/lpcxpresso/Makefile index 3745f283..374c052f 100644 --- a/src/lpcxpresso/Makefile +++ b/src/lpcxpresso/Makefile @@ -45,7 +45,7 @@ all: $(PROG)  LDFLAGS=-L../lpc -Wl,-Taltos.ld  $(PROG): Makefile $(OBJ) -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ao_product.h: ao-make-product.5c ../Version  	$(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@ diff --git a/src/megadongle-v0.1/Makefile b/src/megadongle-v0.1/Makefile index 7f12963f..268f186f 100644 --- a/src/megadongle-v0.1/Makefile +++ b/src/megadongle-v0.1/Makefile @@ -69,7 +69,7 @@ OBJ=$(SRC:.c=.o)  all: $(PROG)  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  $(OBJ): $(INC) diff --git a/src/stm-demo/Makefile b/src/stm-demo/Makefile index 48fa07eb..990968c2 100644 --- a/src/stm-demo/Makefile +++ b/src/stm-demo/Makefile @@ -56,7 +56,7 @@ all: $(ELF) $(IHX)  LDFLAGS=-L../stm -Wl,-Taltos.ld  $(ELF): Makefile $(OBJ) -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $@ $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $@ $(OBJ) $(LIBS)  ao_product.h: ao-make-product.5c ../Version  	$(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@ diff --git a/src/stm-flash/Makefile b/src/stm-flash/Makefile index 1ea35581..5c0699e1 100644 --- a/src/stm-flash/Makefile +++ b/src/stm-flash/Makefile @@ -41,7 +41,7 @@ all: $(PROG)  LDFLAGS=-L../stm -Wl,-Taltos-loader.ld  $(PROG): Makefile $(OBJ) -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ao_product.h: ao-make-product.5c ../Version  	$(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@ diff --git a/src/stm/Makefile-flash.defs b/src/stm/Makefile-flash.defs index f429d9bd..159f8b9c 100644 --- a/src/stm/Makefile-flash.defs +++ b/src/stm/Makefile-flash.defs @@ -12,9 +12,7 @@ endif  include $(TOPDIR)/Makedefs  CC=$(ARM_CC) -SAT=/opt/cortex -SAT_CLIB=$(SAT)/lib/pdclib-cortex-m3.a -SAT_CFLAGS=-I$(SAT)/include +LIBS=-lpdclib-cortex-m3 -lgcc  AO_CFLAGS=-I. -I$(TOPDIR)/stm -I$(TOPDIR)/core -I$(TOPDIR)/drivers -I$(TOPDIR)/product -I$(TOPDIR)  STM_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m3 -mthumb -ffreestanding -nostdlib $(AO_CFLAGS) $(SAT_CFLAGS) @@ -73,7 +71,7 @@ PROGNAME=altos-flash  PROG=$(HARDWARE)-$(PROGNAME)-$(VERSION).elf  $(PROG): Makefile $(OBJ) altos-loader.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ao_product.h: ao-make-product.5c $(TOPDIR)/Version  	$(call quiet,NICKLE,$<) $< -m altusmetrum.org -i $(IDPRODUCT) -p $(PRODUCT) -v $(VERSION) > $@ diff --git a/src/stm/Makefile.defs b/src/stm/Makefile.defs index ede75f80..ee1cb658 100644 --- a/src/stm/Makefile.defs +++ b/src/stm/Makefile.defs @@ -22,12 +22,10 @@ endif  include $(TOPDIR)/Makedefs  CC=$(ARM_CC) -SAT=/opt/cortex -SAT_CLIB=$(SAT)/lib/pdclib-cortex-m3.a -SAT_CFLAGS=-I$(SAT)/include +LIBS=-lpdclib-cortex-m3 -lgcc  AO_CFLAGS=-I. -I../stm -I../core -I../drivers -I.. -STM_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m3 -mthumb -ffreestanding -nostdlib $(AO_CFLAGS) $(SAT_CFLAGS) +STM_CFLAGS=-std=gnu99 -mlittle-endian -mcpu=cortex-m3 -mthumb -ffreestanding -nostdlib $(AO_CFLAGS)  LDFLAGS=-L../stm -Wl,-Taltos.ld diff --git a/src/telegps-v0.1/Makefile b/src/telegps-v0.1/Makefile index 64deddc6..170294e6 100644 --- a/src/telegps-v0.1/Makefile +++ b/src/telegps-v0.1/Makefile @@ -82,7 +82,7 @@ OBJ=$(SRC:.c=.o)  all: $(PROG)  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  $(OBJ): $(INC) diff --git a/src/telegps-v0.3/Makefile b/src/telegps-v0.3/Makefile index ca7d7c2b..d129d295 100644 --- a/src/telegps-v0.3/Makefile +++ b/src/telegps-v0.3/Makefile @@ -66,7 +66,7 @@ all: $(PROG)  LDFLAGS=-L../lpc -Wl,-Taltos.ld  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  $(OBJ): $(INC) diff --git a/src/telelco-v0.1/Makefile b/src/telelco-v0.1/Makefile index 24083308..0f61788c 100644 --- a/src/telelco-v0.1/Makefile +++ b/src/telelco-v0.1/Makefile @@ -76,7 +76,7 @@ OBJ=$(SRC:.c=.o)  all: $(PROG)  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ../altitude.h: make-altitude  	nickle $< > $@ diff --git a/src/telelco-v0.2/Makefile b/src/telelco-v0.2/Makefile index f78ca9e2..bc5f8571 100644 --- a/src/telelco-v0.2/Makefile +++ b/src/telelco-v0.2/Makefile @@ -85,7 +85,7 @@ OBJ=$(SRC:.c=.o)  all: $(PROG)  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ../altitude.h: make-altitude  	nickle $< > $@ diff --git a/src/telemega-v0.1/Makefile b/src/telemega-v0.1/Makefile index bf756e96..bbf46f3c 100644 --- a/src/telemega-v0.1/Makefile +++ b/src/telemega-v0.1/Makefile @@ -112,7 +112,7 @@ OBJ=$(SRC:.c=.o)  all: $(PROG)  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ../altitude-pa.h: make-altitude-pa  	nickle $< > $@ diff --git a/src/telemega-v0.3/Makefile b/src/telemega-v0.3/Makefile index f2c0625f..6e5da721 100644 --- a/src/telemega-v0.3/Makefile +++ b/src/telemega-v0.3/Makefile @@ -112,7 +112,7 @@ OBJ=$(SRC:.c=.o)  all: $(PROG)  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ../altitude-pa.h: make-altitude-pa  	nickle $< > $@ diff --git a/src/telemetrum-v2.0/Makefile b/src/telemetrum-v2.0/Makefile index c03a5539..be72d493 100644 --- a/src/telemetrum-v2.0/Makefile +++ b/src/telemetrum-v2.0/Makefile @@ -101,7 +101,7 @@ OBJ=$(SRC:.c=.o)  all: $(PROG)  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  ../altitude-pa.h: make-altitude-pa  	nickle $< > $@ diff --git a/src/telescience-v0.2/Makefile b/src/telescience-v0.2/Makefile index f16ef268..c53a6cc3 100644 --- a/src/telescience-v0.2/Makefile +++ b/src/telescience-v0.2/Makefile @@ -68,7 +68,7 @@ OBJ=$(SRC:.c=.o)  all: $(PROG)  $(PROG): Makefile $(OBJ) altos.ld -	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(SAT_CLIB) -lgcc +	$(call quiet,CC) $(LDFLAGS) $(CFLAGS) -o $(PROG) $(OBJ) $(LIBS)  $(OBJ): $(INC)  | 
