diff options
| author | Xavier ASUS <xavi92psx@gmail.com> | 2019-10-18 00:31:54 +0200 |
|---|---|---|
| committer | Xavier ASUS <xavi92psx@gmail.com> | 2019-10-18 00:31:54 +0200 |
| commit | 268a53de823a6750d6256ee1fb1e7707b4b45740 (patch) | |
| tree | 42c1799a9a82b2f7d9790ee9fe181d72a7274751 /device/lib/s08/Makefile | |
| download | sdcc-gas-268a53de823a6750d6256ee1fb1e7707b4b45740.tar.gz | |
sdcc-3.9.0 fork implementing GNU assembler syntax
This fork aims to provide better support for stm8-binutils
Diffstat (limited to 'device/lib/s08/Makefile')
| -rw-r--r-- | device/lib/s08/Makefile | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/device/lib/s08/Makefile b/device/lib/s08/Makefile new file mode 100644 index 0000000..38216cc --- /dev/null +++ b/device/lib/s08/Makefile @@ -0,0 +1,97 @@ +# libc/s08 Makefile + + +srcdir = . +top_builddir = ../../.. + +LIB_TYPE = RANLIB + +SCC = $(top_builddir)/bin/sdcc -ms08 +SAS = $(top_builddir)/bin/sdas6808 + +# override PORTDIR defined by super (parent) makefile +override PORTDIR = ../build/s08 + +include $(srcdir)/../incl.mk + +HC08_FLOAT = $(COMMON_FLOAT) + +HC08_INT = $(COMMON_INT) \ + _divsint.c \ + _divuint.c \ + _modsint.c \ + _moduint.c + +HC08_LONG = $(COMMON_LONG) \ + _mullong.c \ + _divulong.c + +HC08_LONGLONG = $(COMMON_LONGLONG) \ + _rrulonglong.c \ + _rrslonglong.c \ + _rlulonglong.c \ + _rlslonglong.c \ + _mullonglong.c \ + _divslonglong.c \ + _divulonglong.c \ + _modslonglong.c \ + _modulonglong.c + +HC08_SDCC = $(COMMON_SDCC) \ + _itoa.c \ + _ltoa.c \ + _spx.c \ + _startup.c \ + _strlen.c \ + _strcmp.c \ + _strcpy.c \ + __memcpy.c \ + memcpy.c \ + _memmove.c \ + _heap.c \ + sprintf.c \ + vprintf.c + +HC08SOURCES = $(addprefix ../,$(HC08_FLOAT) $(HC08_INT) $(HC08_LONG) $(HC08_LONGLONG) $(HC08_SDCC)) +HC08OBJECTS = $(patsubst %.c,%.rel,$(HC08_FLOAT) $(HC08_INT) $(HC08_LONG) $(HC08_LONGLONG) $(HC08_SDCC)) + +OBJ = _ret.rel _mulint.rel _setjmp.rel + +LIB = s08.lib +CC = $(SCC) +AS = $(SAS) +ASFLAGS = -plosgff + +CFLAGS = -I$(srcdir)/../../include -I. --std-c11 + +all: $(PORTDIR)/$(LIB) + +$(PORTDIR)/$(LIB): $(OBJ) $(HC08OBJECTS) Makefile +ifeq ($(LIB_TYPE), SDCCLIB) + rm -f $@; \ + $(top_builddir)/bin/sdcclib -a $@ $(OBJ) $(HC08OBJECTS) +else + ifeq ($(LIB_TYPE), AR) + $(top_builddir)/bin/sdar -rcSD $@ $(OBJ) $(HC08OBJECTS) + else + ifeq ($(LIB_TYPE), RANLIB) + $(top_builddir)/bin/sdar -rcD $@ $(OBJ) $(HC08OBJECTS) + else + rm -f $@ + for i in $(basename $(OBJ) $(HC08OBJECTS)); do echo $$i >>$@; done + cp $(OBJ) $(HC08OBJECTS) $(PORTDIR) + endif + endif +endif + +%.rel: %.c + $(CC) $(CFLAGS) -c $< + +%.rel: ../%.c + $(CC) $(CFLAGS) -c $< + +clean: + rm -f *.rel *.sym *.lst *~ $(CLEANSPEC) *.dump* *.asm *.lib + +distclean: clean + rm -f Makefile |
