mirror of
https://github.com/adtools/clib2.git
synced 2025-12-08 14:59:05 +00:00
- [jlangner]: changed the GNUmakefile.68k to also build soft-float variants of all
our libraries. In addition the specs file now also respects the -msoft-float option at link time and sets the default link directory accordingly. git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15176 87f5fb63-7c3d-0410-a384-fd976d0f7a62
This commit is contained in:
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
|
|
||||||
*link:
|
*link:
|
||||||
%{fbaserel:%{!resident:-m amiga_bss -fl libb}} %{resident:-m amiga_bss -amiga-datadata-reloc -fl libb} %{fbaserel32:%{!resident32:-m amiga_bss -fl libb32}} %{resident32:-m amiga_bss -amiga-datadata-reloc -fl libb32} %{g:-amiga-debug-hunk} %{m68020:-fl libm020} %{mc68020:-fl libm020} %{m68030:-fl libm020} %{m68040:-fl libm020} %{m68060:-fl libm020} %{m68020-40:-fl libm020} %{m68020-60:-fl libm020} %{noixemul:}
|
%{fbaserel:%{!resident:-m amiga_bss -fl libb}} %{resident:-m amiga_bss -amiga-datadata-reloc -fl libb} %{fbaserel32:%{!resident32:-m amiga_bss -fl libb32}} %{resident32:-m amiga_bss -amiga-datadata-reloc -fl libb32} %{g:-amiga-debug-hunk} %{m68020:-fl libm020} %{mc68020:-fl libm020} %{m68030:-fl libm020} %{m68040:-fl libm020} %{m68060:-fl libm020} %{m68020-40:-fl libm020} %{m68020-60:-fl libm020} %{msoft-float:-fl soft-float} %{noixemul:}
|
||||||
|
|
||||||
*lib:
|
*lib:
|
||||||
%{mstackextend:-lstack} -lc -lamiga -ldebug -lgcc -lc
|
%{mstackextend:-lstack} -lc -lamiga -ldebug -lgcc -lc
|
||||||
|
|||||||
@ -1,11 +1,19 @@
|
|||||||
#
|
#
|
||||||
# $Id: GNUmakefile.68k,v 1.101 2007-01-06 10:09:48 obarthel Exp $
|
# $Id: GNUmakefile.68k,v 1.102 2008-03-04 16:25:35 damato Exp $
|
||||||
#
|
#
|
||||||
# :ts=8
|
# :ts=8
|
||||||
#
|
#
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
|
############################################
|
||||||
|
# find out the HOST operating system
|
||||||
|
# on which this makefile is run (default to AmigaOS)
|
||||||
|
HOST ?= $(shell uname)
|
||||||
|
ifeq ($(HOST),)
|
||||||
|
HOST = AmigaOS
|
||||||
|
endif
|
||||||
|
|
||||||
CC = gcc
|
CC = gcc
|
||||||
AR = ar -q
|
AR = ar -q
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
@ -14,6 +22,16 @@ DELETE = delete all quiet
|
|||||||
MAKEDIR = makedir
|
MAKEDIR = makedir
|
||||||
MAKE = $(MAKE_COMMAND) -f GNUmakefile.68k
|
MAKE = $(MAKE_COMMAND) -f GNUmakefile.68k
|
||||||
|
|
||||||
|
# override certain things for non-native builds
|
||||||
|
ifneq ($(HOST), AmigaOS)
|
||||||
|
CC = m68k-amigaos-gcc
|
||||||
|
AR = m68k-amigaos-ar -q
|
||||||
|
RANLIB = m68k-amigaos-ranlib
|
||||||
|
COPY = cp
|
||||||
|
DELETE = rm -rf
|
||||||
|
MAKEDIR = mkdir
|
||||||
|
endif
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
ifeq (,$(TYPE))
|
ifeq (,$(TYPE))
|
||||||
@ -95,6 +113,22 @@ CODE_TYPE := -m68000
|
|||||||
CODE_FLAGS :=
|
CODE_FLAGS :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq (soft_float_020,$(TYPE))
|
||||||
|
CODE_TYPE := -m68020-60 -msoft-float
|
||||||
|
CODE_FLAGS := -DM68020 -DUSE_64_BIT_INTS
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq (soft_float_data,$(TYPE))
|
||||||
|
CODE_TYPE := -m68020-60 -msoft-float
|
||||||
|
CODE_FLAGS := -fbaserel -DSMALL_DATA -DM68020 -DUSE_64_BIT_INTS
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq (soft_float_data32,$(TYPE))
|
||||||
|
CODE_TYPE := -m68020-60 -msoft-float
|
||||||
|
CODE_FLAGS := -fbaserel32 -DSMALL_DATA32 -DM68020 -DUSE_64_BIT_INTS
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
WARNINGS = \
|
WARNINGS = \
|
||||||
@ -109,7 +143,7 @@ INCLUDES = -Iinclude -I. -Inetinclude
|
|||||||
#OPTIONS = -fno-builtin -fno-common -DNDEBUG -D__THREAD_SAFE
|
#OPTIONS = -fno-builtin -fno-common -DNDEBUG -D__THREAD_SAFE
|
||||||
#OPTIONS = -fno-builtin -fno-common -D__MEM_DEBUG
|
#OPTIONS = -fno-builtin -fno-common -D__MEM_DEBUG
|
||||||
#OPTIONS = -fno-builtin -fno-common -DDEBUG -D__MEM_DEBUG -DNO_INLINE_STDARG
|
#OPTIONS = -fno-builtin -fno-common -DDEBUG -D__MEM_DEBUG -DNO_INLINE_STDARG
|
||||||
OPTIMIZE = -O -fomit-frame-pointer -fstrength-reduce -finline-functions
|
OPTIMIZE = -O3 -fomit-frame-pointer -funroll-loops -finline-functions
|
||||||
#OPTIMIZE = -O2 -fomit-frame-pointer
|
#OPTIMIZE = -O2 -fomit-frame-pointer
|
||||||
#DEBUG = -g
|
#DEBUG = -g
|
||||||
|
|
||||||
@ -964,10 +998,13 @@ all: \
|
|||||||
lib/n32bcrt0.o \
|
lib/n32bcrt0.o \
|
||||||
lib/n32rcrt0.o \
|
lib/n32rcrt0.o \
|
||||||
lib/libm020/libm.a \
|
lib/libm020/libm.a \
|
||||||
|
lib/libm020/soft-float/libm.a \
|
||||||
lib/libm.a \
|
lib/libm.a \
|
||||||
lib/libb/libm.a \
|
lib/libb/libm.a \
|
||||||
lib/libb/libm020/libm.a \
|
lib/libb/libm020/libm.a \
|
||||||
lib/libb32/libm020/libm.a
|
lib/libb/libm020/soft-float/libm.a \
|
||||||
|
lib/libb32/libm020/libm.a \
|
||||||
|
lib/libb32/libm020/soft-float/libm.a
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
@ -980,7 +1017,7 @@ clean:
|
|||||||
realclean:
|
realclean:
|
||||||
$(MAKE) clean
|
$(MAKE) clean
|
||||||
-$(DELETE) lib small_data_020 small_data small_data32 large_data_020 \
|
-$(DELETE) lib small_data_020 small_data small_data32 large_data_020 \
|
||||||
large_data
|
large_data soft_float_020 soft_float_data soft_float_data32
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
@ -1026,15 +1063,24 @@ lib/libb : lib
|
|||||||
lib/libb/libm020 : lib lib/libb
|
lib/libb/libm020 : lib lib/libb
|
||||||
-$(MAKEDIR) $@
|
-$(MAKEDIR) $@
|
||||||
|
|
||||||
|
lib/libb/libm020/soft-float : lib lib/libb/libm020
|
||||||
|
-$(MAKEDIR) $@
|
||||||
|
|
||||||
lib/libb32/libm020 : lib lib/libb32
|
lib/libb32/libm020 : lib lib/libb32
|
||||||
-$(MAKEDIR) $@
|
-$(MAKEDIR) $@
|
||||||
|
|
||||||
|
lib/libb32/libm020/soft-float : lib lib/libb32/libm020
|
||||||
|
-$(MAKEDIR) $@
|
||||||
|
|
||||||
lib/libb32 : lib
|
lib/libb32 : lib
|
||||||
-$(MAKEDIR) $@
|
-$(MAKEDIR) $@
|
||||||
|
|
||||||
lib/libm020 : lib
|
lib/libm020 : lib
|
||||||
-$(MAKEDIR) $@
|
-$(MAKEDIR) $@
|
||||||
|
|
||||||
|
lib/libm020/soft-float : lib lib/libm020
|
||||||
|
-$(MAKEDIR) $@
|
||||||
|
|
||||||
lib/libb/libm020/libm.a: lib lib/libb/libm020
|
lib/libb/libm020/libm.a: lib lib/libb/libm020
|
||||||
$(MAKE) TYPE=small_data_020 kitchen_sink
|
$(MAKE) TYPE=small_data_020 kitchen_sink
|
||||||
@$(COPY) $(foreach file,$(LIBS_020),small_data_020/$(file)) lib/libb/libm020
|
@$(COPY) $(foreach file,$(LIBS_020),small_data_020/$(file)) lib/libb/libm020
|
||||||
@ -1055,6 +1101,18 @@ lib/libm.a: lib
|
|||||||
$(MAKE) TYPE=large_data kitchen_sink
|
$(MAKE) TYPE=large_data kitchen_sink
|
||||||
@$(COPY) $(foreach file,$(LIBS_68K),large_data/$(file)) lib
|
@$(COPY) $(foreach file,$(LIBS_68K),large_data/$(file)) lib
|
||||||
|
|
||||||
|
lib/libm020/soft-float/libm.a: lib lib/libm020/soft-float
|
||||||
|
$(MAKE) TYPE=soft_float_020 kitchen_sink
|
||||||
|
@$(COPY) $(foreach file,$(LIBS_020),soft_float_020/$(file)) lib/libm020/soft-float
|
||||||
|
|
||||||
|
lib/libb/libm020/soft-float/libm.a: lib lib/libb/libm020/soft-float
|
||||||
|
$(MAKE) TYPE=soft_float_data kitchen_sink
|
||||||
|
@$(COPY) $(foreach file,$(LIBS_020),soft_float_data/$(file)) lib/libb/libm020/soft-float
|
||||||
|
|
||||||
|
lib/libb32/libm020/soft-float/libm.a: lib lib/libb32/libm020/soft-float
|
||||||
|
$(MAKE) TYPE=soft_float_data32 kitchen_sink
|
||||||
|
@$(COPY) $(foreach file,$(LIBS_020),soft_float_data32/$(file)) lib/libb32/libm020/soft-float
|
||||||
|
|
||||||
lib/nrcrt0.o : lib nrcrt0.o
|
lib/nrcrt0.o : lib nrcrt0.o
|
||||||
@$(COPY) nrcrt0.o lib
|
@$(COPY) nrcrt0.o lib
|
||||||
|
|
||||||
@ -1265,7 +1323,7 @@ nrcrt0.o : nrcrt0.S
|
|||||||
|
|
||||||
nr32crt0.o : nrcrt0.S
|
nr32crt0.o : nrcrt0.S
|
||||||
@echo "Assembling $< [resident32]"
|
@echo "Assembling $< [resident32]"
|
||||||
@$(CC) -traditional -m68020 -DSMALL_DATA32 -o $@ -c nrcrt0.S
|
@$(CC) -traditional -m68020 -msoft-float -DSMALL_DATA32 -o $@ -c nrcrt0.S
|
||||||
|
|
||||||
nbcrt0.o : ncrt0.S
|
nbcrt0.o : ncrt0.S
|
||||||
@echo "Assembling $< [small_data]"
|
@echo "Assembling $< [small_data]"
|
||||||
@ -1273,7 +1331,7 @@ nbcrt0.o : ncrt0.S
|
|||||||
|
|
||||||
nb32crt0.o : ncrt0.S
|
nb32crt0.o : ncrt0.S
|
||||||
@echo "Assembling $< [small_data32]"
|
@echo "Assembling $< [small_data32]"
|
||||||
@$(CC) -traditional -m68020 -DSMALL_DATA32 -o $@ -c ncrt0.S
|
@$(CC) -traditional -m68020 -msoft-float -DSMALL_DATA32 -o $@ -c ncrt0.S
|
||||||
|
|
||||||
ncrt0.o : ncrt0.S
|
ncrt0.o : ncrt0.S
|
||||||
@echo "Assembling $< [large_data]"
|
@echo "Assembling $< [large_data]"
|
||||||
|
|||||||
@ -1,6 +1,10 @@
|
|||||||
- the log() and log10() functions always returned -inf() even if the arguments
|
- [jlangner]: changed the GNUmakefile.68k to also build soft-float variants of all
|
||||||
was within the valid range for a log() function. Using DBL_EPSILON as the
|
our libraries. In addition the specs file now also respects the -msoft-float
|
||||||
threshold was not correct as EPSILON is 2.2204460492503131E-16 whereas
|
option at link time and sets the default link directory accordingly.
|
||||||
|
|
||||||
|
- [jlangner]: the log() and log10() functions always returned -inf() even if the
|
||||||
|
arguments was within the valid range for a log() function. Using DBL_EPSILON as
|
||||||
|
the threshold was not correct as EPSILON is 2.2204460492503131E-16 whereas
|
||||||
values like 1E-200 are still valid double values for a log().
|
values like 1E-200 are still valid double values for a log().
|
||||||
|
|
||||||
c.lib 1.202 (16.1.2007)
|
c.lib 1.202 (16.1.2007)
|
||||||
|
|||||||
Reference in New Issue
Block a user