1
0
mirror of https://github.com/adtools/clib2.git synced 2025-12-08 14:59:05 +00:00

1 Commits

Author SHA1 Message Date
Olaf Barthel
93fe7d42e6 This commit was manufactured by cvs2svn to create tag 'V1_187'.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/tags/V1_187@14817 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2005-01-29 18:22:20 +00:00
949 changed files with 12255 additions and 45849 deletions

View File

@@ -1,5 +1,5 @@
# #
# $Id: GNUmakefile.68k,v 1.96 2006-09-17 17:36:42 obarthel Exp $ # $Id: GNUmakefile.68k,v 1.23 2005-01-29 18:05:13 obarthel Exp $
# #
# :ts=8 # :ts=8
# #
@@ -12,7 +12,7 @@ RANLIB = ranlib
COPY = copy clone buf=0 COPY = copy clone buf=0
DELETE = delete all quiet DELETE = delete all quiet
MAKEDIR = makedir MAKEDIR = makedir
MAKE = $(MAKE_COMMAND) -f GNUmakefile.68k MAKE = make -f GNUmakefile.68k
############################################################################## ##############################################################################
@@ -21,6 +21,7 @@ LIBC_OBJS = libc_objs
LIBUNIX_OBJS = libunix_objs LIBUNIX_OBJS = libunix_objs
LIBM_OBJS = libm_objs LIBM_OBJS = libm_objs
LIBM881_OBJS = libm881_objs LIBM881_OBJS = libm881_objs
LIBSTACK_OBJS = libstack_objs
LIBNET_OBJS = libnet_objs LIBNET_OBJS = libnet_objs
LIBDEBUG_OBJS = libdebug_objs LIBDEBUG_OBJS = libdebug_objs
LIBAMIGA_OBJS = libamiga_objs LIBAMIGA_OBJS = libamiga_objs
@@ -29,6 +30,7 @@ LIBC_OBJS = $(TYPE)/libc_objs
LIBUNIX_OBJS = $(TYPE)/libunix_objs LIBUNIX_OBJS = $(TYPE)/libunix_objs
LIBM_OBJS = $(TYPE)/libm_objs LIBM_OBJS = $(TYPE)/libm_objs
LIBM881_OBJS = $(TYPE)/libm881_objs LIBM881_OBJS = $(TYPE)/libm881_objs
LIBSTACK_OBJS = $(TYPE)/libstack_objs
LIBNET_OBJS = $(TYPE)/libnet_objs LIBNET_OBJS = $(TYPE)/libnet_objs
LIBDEBUG_OBJS = $(TYPE)/libdebug_objs LIBDEBUG_OBJS = $(TYPE)/libdebug_objs
LIBAMIGA_OBJS = $(TYPE)/libamiga_objs LIBAMIGA_OBJS = $(TYPE)/libamiga_objs
@@ -56,6 +58,10 @@ $(LIBM881_OBJS)/%.o : %.c
@echo "Compiling $< [$(TYPE):m881]" @echo "Compiling $< [$(TYPE):m881]"
@$(CC) -o $(LIBM881_OBJS)/$*.o -c $(CFLAGS) -DM68881_FLOATING_POINT_SUPPORT -m68881 $< @$(CC) -o $(LIBM881_OBJS)/$*.o -c $(CFLAGS) -DM68881_FLOATING_POINT_SUPPORT -m68881 $<
$(LIBSTACK_OBJS)/%.o : %.c
@echo "Compiling $< [$(TYPE):stack]"
@$(CC) -o $(LIBSTACK_OBJS)/$*.o -c $(CFLAGS) -DSTACK_EXTENSION $<
$(LIBNET_OBJS)/%.o : %.c $(LIBNET_OBJS)/%.o : %.c
@echo "Compiling $< [$(TYPE):net]" @echo "Compiling $< [$(TYPE):net]"
@$(CC) -o $(LIBNET_OBJS)/$*.o -c $(CFLAGS) -DSOCKET_SUPPORT -DUSERGROUP_SUPPORT $< @$(CC) -o $(LIBNET_OBJS)/$*.o -c $(CFLAGS) -DSOCKET_SUPPORT -DUSERGROUP_SUPPORT $<
@@ -71,51 +77,42 @@ $(LIBAMIGA_OBJS)/%.o : %.c
############################################################################## ##############################################################################
ifeq (small_data_020,$(TYPE)) ifeq (small_data_020,$(TYPE))
CODE_TYPE := -m68020-60 CODE_TYPE := -fbaserel -DSMALL_DATA -m68020-60 -DM68020
CODE_FLAGS := -fbaserel -DSMALL_DATA -DM68020 -DUSE_64_BIT_INTS
endif endif
ifeq (small_data,$(TYPE)) ifeq (small_data,$(TYPE))
CODE_TYPE := -m68000 CODE_TYPE := -fbaserel -DSMALL_DATA -m68000
CODE_FLAGS := -fbaserel -DSMALL_DATA
endif endif
ifeq (small_data32,$(TYPE)) ifeq (small_data32,$(TYPE))
CODE_TYPE := -m68020-60 CODE_TYPE := -fbaserel32 -DSMALL_DATA32 -m68020-60 -DM68020
CODE_FLAGS := -fbaserel32 -DSMALL_DATA32 -DM68020 -DUSE_64_BIT_INTS
endif endif
ifeq (large_data_020,$(TYPE)) ifeq (large_data_020,$(TYPE))
CODE_TYPE := -m68020-60 CODE_TYPE := -m68020-60 -DM68020
CODE_FLAGS := -DM68020 -DUSE_64_BIT_INTS
endif endif
ifeq (large_data,$(TYPE)) ifeq (large_data,$(TYPE))
CODE_TYPE := -m68000 CODE_TYPE := -m68000
CODE_FLAGS :=
endif endif
############################################################################## ##############################################################################
WARNINGS = \ WARNINGS = \
-Wall -W -Wpointer-arith -Wsign-compare -Wmissing-prototypes \ -Wall -W -Wpointer-arith -Wsign-compare -Wmissing-prototypes \
-Wundef -Wbad-function-cast -Wmissing-declarations -Wunused -Wundef -Wbad-function-cast -Wmissing-declarations
# -Wconversion -Wshadow # -Wconversion -Wshadow
INCLUDES = -Iinclude -I. -Inetinclude INCLUDES = -Iinclude -I. -Inetinclude
#OPTIONS = -fno-builtin -fno-common -DDEBUG OPTIONS = -DNDEBUG -fno-builtin
OPTIONS = -fno-builtin -fno-common -DNDEBUG #OPTIONS = -D__MEM_DEBUG -fno-builtin
#OPTIONS = -fno-builtin -fno-common -DNDEBUG -D__THREAD_SAFE #OPTIONS = -DDEBUG -D__MEM_DEBUG -DNO_INLINE_STDARG -fno-builtin
#OPTIONS = -fno-builtin -fno-common -D__MEM_DEBUG #OPTIMIZE = -O -fomit-frame-pointer -fstrength-reduce -finline-functions
#OPTIONS = -fno-builtin -fno-common -DDEBUG -D__MEM_DEBUG -DNO_INLINE_STDARG
OPTIMIZE = -O -fomit-frame-pointer -fstrength-reduce -finline-functions
#OPTIMIZE = -O2 -fomit-frame-pointer #OPTIMIZE = -O2 -fomit-frame-pointer
#DEBUG = -g #DEBUG = -g2
CFLAGS = \ CFLAGS = $(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) $(CODE_TYPE) $(INCLUDES)
$(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) \
$(CODE_FLAGS) $(CODE_TYPE) $(INCLUDES)
############################################################################## ##############################################################################
@@ -124,7 +121,6 @@ C_LIB = \
ctype_isalnum.o \ ctype_isalnum.o \
ctype_isalpha.o \ ctype_isalpha.o \
ctype_isascii.o \ ctype_isascii.o \
ctype_isblank.o \
ctype_iscntrl.o \ ctype_iscntrl.o \
ctype_isdigit.o \ ctype_isdigit.o \
ctype_isgraph.o \ ctype_isgraph.o \
@@ -134,34 +130,27 @@ C_LIB = \
ctype_isspace.o \ ctype_isspace.o \
ctype_isupper.o \ ctype_isupper.o \
ctype_isxdigit.o \ ctype_isxdigit.o \
ctype_table.o \
ctype_tolower.o \ ctype_tolower.o \
ctype_toupper.o \ ctype_toupper.o \
ctype_table.o \
dirent_closedir.o \ dirent_closedir.o \
dirent_data.o \
dirent_rewinddir.o \
dirent_opendir.o \ dirent_opendir.o \
dirent_readdir.o \ dirent_readdir.o \
dirent_rewinddir.o \
errno_data.o \ errno_data.o \
fcntl_close.o \ fcntl_close.o \
fcntl_creat.o \ fcntl_creat.o \
fcntl_fcntl.o \ fcntl_fcntl.o \
fcntl_get_default_file.o \
fcntl_lock.o \
fcntl_lseek.o \ fcntl_lseek.o \
fcntl_open.o \ fcntl_open.o \
fcntl_read.o \ fcntl_read.o \
fcntl_write.o \ fcntl_write.o \
ftw_ftw.o \ fcntl_get_default_file.o \
ftw_nftw.o \
inttypes_imaxdiv.o \
inttypes_imaxabs.o \
inttypes_strtoimax.o \
inttypes_strtoumax.o \
libgen_basename.o \ libgen_basename.o \
libgen_dirname.o \ libgen_dirname.o \
locale_init_exit.o \ locale_init_exit.o \
locale_localeconv.o \ locale_localeconv.o \
locale_open_locale.o \
locale_setlocale.o \ locale_setlocale.o \
mount_convertinfo.o \ mount_convertinfo.o \
mount_fstatfs.o \ mount_fstatfs.o \
@@ -169,7 +158,6 @@ C_LIB = \
signal_checkabort.o \ signal_checkabort.o \
signal_data.o \ signal_data.o \
signal_kill.o \ signal_kill.o \
signal_mask.o \
signal_raise.o \ signal_raise.o \
signal_sigaddset.o \ signal_sigaddset.o \
signal_sigblock.o \ signal_sigblock.o \
@@ -180,6 +168,7 @@ C_LIB = \
signal_sigsetmask.o \ signal_sigsetmask.o \
stat_chmod.o \ stat_chmod.o \
stat_convertfileinfo.o \ stat_convertfileinfo.o \
stat_data.o \
stat_fchmod.o \ stat_fchmod.o \
stat_fstat.o \ stat_fstat.o \
stat_lstat.o \ stat_lstat.o \
@@ -189,23 +178,21 @@ C_LIB = \
stat_umask.o \ stat_umask.o \
stdio_asprintf.o \ stdio_asprintf.o \
stdio_clearerr.o \ stdio_clearerr.o \
stdio_data.o \
stdio_dropiobreadbuffer.o \ stdio_dropiobreadbuffer.o \
stdio_duplicate_fd.o \ stdio_duplicate_fd.o \
stdio_examine_fh.o \
stdio_fclose.o \ stdio_fclose.o \
stdio_fdhookentry.o \ stdio_fdhookentry.o \
stdio_feof.o \ stdio_feof.o \
stdio_ferror.o \ stdio_ferror.o \
stdio_fflush.o \ stdio_fflush.o \
stdio_flush.o \
stdio_fgetc.o \ stdio_fgetc.o \
stdio_fgetpos.o \ stdio_fgetpos.o \
stdio_fgets.o \ stdio_fgets.o \
stdio_filliobreadbuffer.o \ stdio_filliobreadbuffer.o \
stdio_findvacantfdentry.o \ stdio_findvacantfdentry.o \
stdio_findvacantiobentry.o \ stdio_findvacantiobentry.o \
stdio_flockfile.o \
stdio_flush.o \
stdio_flush_all_files.o \
stdio_flushiobwritebuffer.o \ stdio_flushiobwritebuffer.o \
stdio_fopen.o \ stdio_fopen.o \
stdio_fprintf.o \ stdio_fprintf.o \
@@ -215,42 +202,29 @@ C_LIB = \
stdio_freopen.o \ stdio_freopen.o \
stdio_fscanf.o \ stdio_fscanf.o \
stdio_fseek.o \ stdio_fseek.o \
stdio_fseeko.o \
stdio_fsetpos.o \ stdio_fsetpos.o \
stdio_ftell.o \ stdio_ftell.o \
stdio_ftello.o \
stdio_ftrylockfile.o \
stdio_funlockfile.o \
stdio_fwrite.o \ stdio_fwrite.o \
stdio_getc.o \ stdio_getc.o \
stdio_getc_unlocked.o \
stdio_getchar.o \ stdio_getchar.o \
stdio_getchar_unlocked.o \
stdio_gets.o \
stdio_get_file_descriptor.o \ stdio_get_file_descriptor.o \
stdio_gets.o \
stdio_growfdtable.o \ stdio_growfdtable.o \
stdio_growiobtable.o \ stdio_growiobtable.o \
stdio_grow_file.o \
stdio_initializefd.o \ stdio_initializefd.o \
stdio_initializeiob.o \ stdio_initializeiob.o \
stdio_init_exit.o \ stdio_init_exit.o \
stdio_file_init.o \
stdio_iobhookentry.o \ stdio_iobhookentry.o \
stdio_lock.o \
stdio_locksemaphorename.o \ stdio_locksemaphorename.o \
stdio_nostdio.o \ stdio_nostdio.o \
stdio_openiob.o \ stdio_openiob.o \
stdio_parent_of_fh.o \
stdio_perror.o \ stdio_perror.o \
stdio_popen.o \ stdio_popen.o \
stdio_printf.o \ stdio_printf.o \
stdio_putc.o \ stdio_putc.o \
stdio_putc_unlocked.o \
stdio_putchar.o \ stdio_putchar.o \
stdio_putchar_unlocked.o \
stdio_puts.o \ stdio_puts.o \
stdio_remove.o \ stdio_remove.o \
stdio_remove_fd_alias.o \
stdio_rename.o \ stdio_rename.o \
stdio_rewind.o \ stdio_rewind.o \
stdio_scanf.o \ stdio_scanf.o \
@@ -264,7 +238,6 @@ C_LIB = \
stdio_tmpnam.o \ stdio_tmpnam.o \
stdio_translateioerror.o \ stdio_translateioerror.o \
stdio_ungetc.o \ stdio_ungetc.o \
stdio_unlockfile.o \
stdio_vasprintf.o \ stdio_vasprintf.o \
stdio_vasprintf_hook_entry.o \ stdio_vasprintf_hook_entry.o \
stdio_vfprintf.o \ stdio_vfprintf.o \
@@ -274,23 +247,20 @@ C_LIB = \
stdio_vsnprintf_hook_entry.o \ stdio_vsnprintf_hook_entry.o \
stdio_vsprintf.o \ stdio_vsprintf.o \
stdio_vsprintf_hook_entry.o \ stdio_vsprintf_hook_entry.o \
stdio_vsscanf.o \
stdio_vscanf.o \
stdlib_abort.o \ stdlib_abort.o \
stdlib_abs.o \ stdlib_abs.o \
stdlib_alloca.o \ stdlib_alloca.o \
stdlib_alloca_cleanup.o \
stdlib_alloca_trap.o \
stdlib_assertion_failure.o \ stdlib_assertion_failure.o \
stdlib_atexit.o \ stdlib_atexit.o \
stdlib_atoi.o \ stdlib_atoi.o \
stdlib_atol.o \ stdlib_atol.o \
stdlib_atoll.o \
stdlib_bsearch.o \ stdlib_bsearch.o \
stdlib_calloc.o \ stdlib_calloc.o \
stdlib_checkdetach.o \ stdlib_checkdetach.o \
stdlib_constructor.o \ stdlib_constructor.o \
stdlib_constructor_begin.o \ stdlib_constructor_begin.o \
stdlib_constructor_end.o \
stdlib_data.o \
stdlib_default_pool_size.o \ stdlib_default_pool_size.o \
stdlib_default_puddle_size.o \ stdlib_default_puddle_size.o \
stdlib_destructor.o \ stdlib_destructor.o \
@@ -304,19 +274,12 @@ C_LIB = \
stdlib_free.o \ stdlib_free.o \
stdlib_getdefstacksize.o \ stdlib_getdefstacksize.o \
stdlib_getenv.o \ stdlib_getenv.o \
stdlib_getmemstats.o \
stdlib_getsp.o \ stdlib_getsp.o \
stdlib_get_errno.o \ stdlib_init_exit.o \
stdlib_isresident.o \ stdlib_isresident.o \
stdlib_labs.o \ stdlib_labs.o \
stdlib_llabs.o \
stdlib_ldiv.o \ stdlib_ldiv.o \
stdlib_lldiv.o \
stdlib_lib_main.o \
stdlib_lib_startup.o \
stdlib_machine_test.o \ stdlib_machine_test.o \
stdlib_main.o \
stdlib_main_stub.o \
stdlib_malloc.o \ stdlib_malloc.o \
stdlib_math.o \ stdlib_math.o \
stdlib_mkdtemp.o \ stdlib_mkdtemp.o \
@@ -329,21 +292,17 @@ C_LIB = \
stdlib_oslibversion.o \ stdlib_oslibversion.o \
stdlib_priority.o \ stdlib_priority.o \
stdlib_process_name.o \ stdlib_process_name.o \
stdlib_program_name.o \
stdlib_putenv.o \ stdlib_putenv.o \
stdlib_qsort.o \ stdlib_qsort.o \
stdlib_rand.o \ stdlib_rand.o \
stdlib_rand_r.o \
stdlib_realloc.o \ stdlib_realloc.o \
stdlib_red_black.o \ stdlib_red_black.o \
stdlib_resetmemstats.o \
stdlib_semaphore.o \
stdlib_setenv.o \ stdlib_setenv.o \
stdlib_setjmp.o \ stdlib_setjmp.o \
stdlib_set_errno.o \
stdlib_set_process_window.o \ stdlib_set_process_window.o \
stdlib_shell_escape.o \ stdlib_shell_escape.o \
stdlib_showerror.o \ stdlib_showerror.o \
stdlib_socket.o \
stdlib_srand.o \ stdlib_srand.o \
stdlib_stackargbytes.o \ stdlib_stackargbytes.o \
stdlib_stackcheck.o \ stdlib_stackcheck.o \
@@ -351,23 +310,22 @@ C_LIB = \
stdlib_stacksafezone.o \ stdlib_stacksafezone.o \
stdlib_stacksize.o \ stdlib_stacksize.o \
stdlib_stack_usage.o \ stdlib_stack_usage.o \
stdlib_arg.o \ stdlib_startup.o \
stdlib_stdio_window_spec.o \
stdlib_strtol.o \ stdlib_strtol.o \
stdlib_strtoll.o \
stdlib_strtoul.o \ stdlib_strtoul.o \
stdlib_strtoll.o \
stdlib_strtoull.o \ stdlib_strtoull.o \
stdlib_swapstack.o \ stdlib_swapstack.o \
stdlib_sysbase.o \ stdlib_sysbase.o \
stdlib_system.o \ stdlib_system.o \
stdlib_termination_message.o \ stdlib_termination_message.o \
stdlib_threshold.o \ stdlib_threshold.o \
stdlib_utilitybase.o \
stdlib_udivsi3.o \ stdlib_udivsi3.o \
stdlib_udivsi4.o \ stdlib_udivsi4.o \
stdlib_umodsi3.o \ stdlib_umodsi3.o \
stdlib_unsetenv.o \ stdlib_unsetenv.o \
strings_ffs.o \ stdlib_wildcard_expand.o \
stdlib_stdio_window_spec.o \
strings_strcasecmp.o \ strings_strcasecmp.o \
strings_strncasecmp.o \ strings_strncasecmp.o \
string_bcmp.o \ string_bcmp.o \
@@ -388,7 +346,6 @@ C_LIB = \
string_strcspn.o \ string_strcspn.o \
string_strdup.o \ string_strdup.o \
string_strerror.o \ string_strerror.o \
string_strerror_r.o \
string_strlcat.o \ string_strlcat.o \
string_strlcpy.o \ string_strlcpy.o \
string_strlen.o \ string_strlen.o \
@@ -422,9 +379,6 @@ C_LIB = \
time_strftime.o \ time_strftime.o \
time_time.o \ time_time.o \
time_weekday.o \ time_weekday.o \
uio_readv.o \
uio_writev.o \
ulimit_ulimit.o \
unistd_access.o \ unistd_access.o \
unistd_chdir.o \ unistd_chdir.o \
unistd_chdir_exit.o \ unistd_chdir_exit.o \
@@ -433,10 +387,8 @@ C_LIB = \
unistd_dup.o \ unistd_dup.o \
unistd_dup2.o \ unistd_dup2.o \
unistd_fchown.o \ unistd_fchown.o \
unistd_fdatasync.o \
unistd_fdopen.o \ unistd_fdopen.o \
unistd_fileno.o \ unistd_fileno.o \
unistd_fsync.o \
unistd_ftruncate.o \ unistd_ftruncate.o \
unistd_getcwd.o \ unistd_getcwd.o \
unistd_getopt.o \ unistd_getopt.o \
@@ -445,23 +397,21 @@ C_LIB = \
unistd_isatty.o \ unistd_isatty.o \
unistd_lchown.o \ unistd_lchown.o \
unistd_link.o \ unistd_link.o \
unistd_lockf.o \
unistd_readlink.o \ unistd_readlink.o \
unistd_realpath.o \ unistd_realpath.o \
unistd_sleep.o \ unistd_sleep.o \
unistd_symlink.o \ unistd_symlink.o \
unistd_sync_fd.o \
unistd_timer.o \ unistd_timer.o \
unistd_time_delay.o \ unistd_time_delay.o \
unistd_truncate.o \ unistd_truncate.o \
unistd_unlink.o \ unistd_unlink.o \
unistd_usleep.o \ unistd_usleep.o \
utime_utime.o \ utime_utime.o
utsname_uname.o
UNIX_LIB = \ UNIX_LIB = \
unix.lib_rev.o \ unix.lib_rev.o \
dirent_closedir.o \ dirent_closedir.o \
dirent_data.o \
dirent_rewinddir.o \ dirent_rewinddir.o \
dirent_opendir.o \ dirent_opendir.o \
dirent_readdir.o \ dirent_readdir.o \
@@ -469,247 +419,81 @@ UNIX_LIB = \
fcntl_fcntl.o \ fcntl_fcntl.o \
fcntl_open.o \ fcntl_open.o \
fcntl_get_default_file.o \ fcntl_get_default_file.o \
getopt_getopt_long.o \
mount_convertinfo.o \ mount_convertinfo.o \
mount_statfs.o \ mount_statfs.o \
resource_getrlimit.o \
resource_setrlimit.o \
stat_chmod.o \ stat_chmod.o \
stat_fstat.o \ stat_fstat.o \
stat_lstat.o \ stat_lstat.o \
stat_mkdir.o \ stat_mkdir.o \
stat_rmdir.o \ stat_rmdir.o \
stat_stat.o \ stat_stat.o \
stdio_ctermid.o \
stdio_fdhookentry.o \ stdio_fdhookentry.o \
stdio_fflush.o \ stdio_fflush.o \
stdio_fopen.o \ stdio_fopen.o \
stdio_init_exit.o \ stdio_init_exit.o \
stdio_file_init.o \
stdio_locksemaphorename.o \ stdio_locksemaphorename.o \
stdio_openiob.o \ stdio_openiob.o \
stdio_popen.o \ stdio_popen.o \
stdio_record_locking.o \
stdio_remove.o \ stdio_remove.o \
stdio_rename.o \ stdio_rename.o \
stdlib_alloca.o \
stdlib_alloca_cleanup.o \
stdlib_alloca_trap.o \
stdlib_arg.o \
stdlib_expand_wildcard.o \
stdlib_expand_wildcard_check.o \
stdlib_getmemstats.o \
stdlib_main.o \
stdlib_main_stub.o \
stdlib_mkdtemp.o \ stdlib_mkdtemp.o \
stdlib_mkstemp.o \ stdlib_mkstemp.o \
stdlib_mktemp.o \ stdlib_mktemp.o \
stdlib_malloc.o \
stdlib_realloc.o \
stdlib_resetmemstats.o \
stdlib_system.o \ stdlib_system.o \
systeminfo_sysinfo.o \
termios_cfgetispeed.o \
termios_cfgetospeed.o \
termios_cfmakeraw.o \
termios_cfsetispeed.o \
termios_cfsetospeed.o \
termios_console_fdhookentry.o \
termios_tcdrain.o \
termios_tcflow.o \
termios_tcflush.o \
termios_tcgetattr.o \
termios_tcsendbreak.o \
termios_tcsetattr.o \
timeb_ftime.o \
uio_readv.o \
uio_writev.o \
unistd_access.o \ unistd_access.o \
unistd_chdir.o \ unistd_chdir.o \
unistd_chdir_exit.o \ unistd_chdir_exit.o \
unistd_chown.o \ unistd_chown.o \
unistd_common_pathconf.o \
unistd_def_path.o \
unistd_def_path_delimiter.o \
unistd_environ.o \
unistd_execl.o \
unistd_execle.o \
unistd_execlp.o \
unistd_execv.o \
unistd_execve.o \
unistd_execve_env_exit.o \
unistd_execve_env_init.o \
unistd_execve_exit.o \
unistd_execvp.o \
unistd_fpathconf.o \
unistd_getcwd.o \ unistd_getcwd.o \
unistd_lchown.o \ unistd_lchown.o \
unistd_link.o \ unistd_link.o \
unistd_lockf.o \
unistd_pathconf.o \
unistd_readlink.o \ unistd_readlink.o \
unistd_realpath.o \ unistd_realpath.o \
unistd_restorepathname.o \ unistd_restorepathname.o \
unistd_setcurrentpath.o \ unistd_setcurrentpath.o \
unistd_strip_double_slash.o \ unistd_strip_double_slash.o \
unistd_symlink.o \
unistd_translatea2u.o \ unistd_translatea2u.o \
unistd_translaterel.o \ unistd_translaterel.o \
unistd_translateu2a.o \ unistd_translateu2a.o \
unistd_truncate.o \ unistd_truncate.o \
unistd_ttyname.o \
unistd_ttyname_r.o \
unistd_unix_path_semantics.o \ unistd_unix_path_semantics.o \
unistd_unlink.o \ unistd_unlink.o \
unistd_wildcard_expand.o \ unistd_wildcard_expand.o \
utime_utime.o utime_utime.o
MATH_LIB = \ MATH_LIB = \
complex_carg.o \
complex_cargf.o \
complex_cargl.o \
complex_cimag.o \
complex_cimagf.o \
complex_cimagl.o \
complex_conj.o \
complex_conjf.o \
complex_conjl.o \
complex_creal.o \
complex_crealf.o \
complex_creall.o \
fenv_feclearexcept.o \
fenv_fegetenv.o \
fenv_fegetexceptflag.o \
fenv_fegetround.o \
fenv_feholdexcept.o \
fenv_feraiseexcept.o \
fenv_fesetenv.o \
fenv_fesetexceptflag.o \
fenv_fetestexcept.o \
fenv_fetestround.o \
fenv_feupdateenv.o \
math_acos.o \ math_acos.o \
math_acosf.o \
math_acosh.o \
math_acoshf.o \
math_asin.o \ math_asin.o \
math_asinf.o \
math_asinh.o \
math_asinhf.o \
math_atan.o \ math_atan.o \
math_atan2.o \ math_atan2.o \
math_atan2f.o \
math_atanf.o \
math_atanh.o \
math_atanhf.o \
math_cbrt.o \
math_cbrtf.o \
math_ceil.o \ math_ceil.o \
math_ceilf.o \
math_copysign.o \
math_copysignf.o \
math_cos.o \ math_cos.o \
math_cosf.o \
math_cosh.o \ math_cosh.o \
math_coshf.o \ math_data.o \
math_erf.o \
math_erfc.o \
math_erfcf.o \
math_erff.o \
math_exp.o \ math_exp.o \
math_exp2.o \
math_exp2f.o \
math_expf.o \
math_expm1.o \
math_expm1f.o \
math_fabs.o \ math_fabs.o \
math_fabsf.o \
math_fdim.o \
math_fdimf.o \
math_floor.o \ math_floor.o \
math_floorf.o \
math_fma.o \
math_fmaf.o \
math_fmax.o \
math_fmaxf.o \
math_fmin.o \
math_fminf.o \
math_fmod.o \ math_fmod.o \
math_fmodf.o \
math_fpclassify.o \
math_frexp.o \ math_frexp.o \
math_frexpf.o \
math_huge_val.o \
math_huge_valf.o \
math_hypot.o \ math_hypot.o \
math_hypotf.o \
math_ilogb.o \
math_ilogbf.o \
math_inf.o \
math_inff.o \
math_init_exit.o \ math_init_exit.o \
math_isfinite.o \ math_isinf.o \
math_isunordered.o \ math_isnan.o \
math_kernel_cosf.o \
math_kernel_sinf.o \
math_kernel_tanf.o \
math_ldexp.o \ math_ldexp.o \
math_ldexpf.o \
math_lgamma.o \
math_lgammaf.o \
math_log.o \ math_log.o \
math_log10.o \ math_log10.o \
math_log10f.o \
math_log1p.o \
math_log1pf.o \
math_log2.o \
math_log2f.o \
math_logb.o \ math_logb.o \
math_logbf.o \
math_logf.o \
math_lrint.o \
math_lrintf.o \
math_lround.o \
math_lroundf.o \
math_modf.o \ math_modf.o \
math_modff.o \
math_nan.o \
math_nanf.o \
math_nearbyint.o \
math_nearbyintf.o \
math_nextafter.o \
math_nextafterf.o \
math_pow.o \ math_pow.o \
math_powf.o \
math_remainder.o \
math_remainderf.o \
math_remquo.o \
math_remquof.o \
math_rem_pio2f.o \
math_rint.o \ math_rint.o \
math_rintf.o \ math_rintf.o \
math_round.o \
math_roundf.o \
math_scalbn.o \
math_scalbnf.o \
math_signbit.o \
math_sin.o \ math_sin.o \
math_sinf.o \
math_sinh.o \ math_sinh.o \
math_sinhf.o \
math_sqrt.o \ math_sqrt.o \
math_sqrtf.o \
math_tan.o \ math_tan.o \
math_tanf.o \
math_tanh.o \ math_tanh.o \
math_tanhf.o \
math_tgamma.o \
math_tgammaf.o \
math_trunc.o \
math_truncf.o \
stdio_asprintf.o \ stdio_asprintf.o \
stdio_flush.o \ stdio_flush.o \
stdio_flush_all_files.o \
stdio_fprintf.o \ stdio_fprintf.o \
stdio_fscanf.o \ stdio_fscanf.o \
stdio_printf.o \ stdio_printf.o \
@@ -720,14 +504,12 @@ MATH_LIB = \
stdio_vasprintf.o \ stdio_vasprintf.o \
stdio_vfprintf.o \ stdio_vfprintf.o \
stdio_vfscanf.o \ stdio_vfscanf.o \
stdio_vsscanf.o \
stdio_vscanf.o \
stdio_vprintf.o \ stdio_vprintf.o \
stdio_vsnprintf.o \ stdio_vsnprintf.o \
stdio_vsprintf.o \ stdio_vsprintf.o \
stdlib_atof.o \ stdlib_atof.o \
stdlib_machine_test.o \
stdlib_strtod.o \ stdlib_strtod.o \
stdlib_strtof.o \
time_difftime.o time_difftime.o
MATH_LIB_881 = \ MATH_LIB_881 = \
@@ -768,12 +550,20 @@ MATH_LIB_IEEE = \
math_subsf3.o \ math_subsf3.o \
math_truncdfsf2.o math_truncdfsf2.o
STACK_LIB = \
stack.lib_rev.o \
stdlib_setjmp.o \
stdlib_stackextension.o \
stdlib_stackminframe.o \
stdlib_stackoverflow.o \
stdlib_stacksafezone.o
NET_LIB = \ NET_LIB = \
net.lib_rev.o \ net.lib_rev.o \
socket_accept.o \ socket_accept.o \
socket_bind.o \ socket_bind.o \
socket_check_daemon.o \
socket_connect.o \ socket_connect.o \
socket_data.o \
socket_gethostbyaddr.o \ socket_gethostbyaddr.o \
socket_gethostbyname.o \ socket_gethostbyname.o \
socket_gethostid.o \ socket_gethostid.o \
@@ -799,13 +589,10 @@ NET_LIB = \
socket_ioctl.o \ socket_ioctl.o \
socket_isdaemon.o \ socket_isdaemon.o \
socket_listen.o \ socket_listen.o \
socket_obtain_daemon.o \
socket_recv.o \ socket_recv.o \
socket_recvfrom.o \ socket_recvfrom.o \
socket_recvmsg.o \ socket_recvmsg.o \
socket_select_signal.o \
socket_select.o \ socket_select.o \
socket_wait_select.o \
socket_send.o \ socket_send.o \
socket_sendmsg.o \ socket_sendmsg.o \
socket_sendto.o \ socket_sendto.o \
@@ -814,10 +601,7 @@ NET_LIB = \
socket_socket.o \ socket_socket.o \
socket_hook_entry.o \ socket_hook_entry.o \
socket_hstrerror.o \ socket_hstrerror.o \
socket_get_h_errno.o \
socket_set_h_errno.o \
stat_umask.o \ stat_umask.o \
systeminfo_sysinfo.o \
usergroup_crypt.o \ usergroup_crypt.o \
usergroup_data.o \ usergroup_data.o \
usergroup_endgrent.o \ usergroup_endgrent.o \
@@ -846,8 +630,7 @@ NET_LIB = \
usergroup_setregid.o \ usergroup_setregid.o \
usergroup_setreuid.o \ usergroup_setreuid.o \
usergroup_setsid.o \ usergroup_setsid.o \
usergroup_setuid.o \ usergroup_setuid.o
utsname_uname.o
DEBUG_LIB = \ DEBUG_LIB = \
debug.lib_rev.o \ debug.lib_rev.o \
@@ -929,7 +712,7 @@ MEMDEBUG_LIB = \
############################################################################## ##############################################################################
LIBS_68K := $(LIBC_OBJS)/libc.a $(LIBUNIX_OBJS)/libunix.a \ LIBS_68K := $(LIBC_OBJS)/libc.a $(LIBSTACK_OBJS)/libstack.a $(LIBUNIX_OBJS)/libunix.a \
$(LIBNET_OBJS)/libnet.a $(LIBDEBUG_OBJS)/libdebug.a $(LIBAMIGA_OBJS)/libamiga.a \ $(LIBNET_OBJS)/libnet.a $(LIBDEBUG_OBJS)/libdebug.a $(LIBAMIGA_OBJS)/libamiga.a \
$(LIBM_OBJS)/libm.a $(LIBM_OBJS)/libm.a
LIBS_020 := $(LIBM881_OBJS)/libm881.a $(LIBS_68K) LIBS_020 := $(LIBM881_OBJS)/libm881.a $(LIBS_68K)
@@ -937,7 +720,7 @@ LIBS_020 := $(LIBM881_OBJS)/libm881.a $(LIBS_68K)
############################################################################## ##############################################################################
# The 881 math library won't build in plain 68k mode # The 881 math library won't build in plain 68k mode
ifneq (,$(findstring 68020,$(CODE_FLAGS))) ifneq (,$(findstring 68020,$(CODE_TYPE)))
LIBS := $(LIBS_020) LIBS := $(LIBS_020)
else else
LIBS := $(LIBS_68K) LIBS := $(LIBS_68K)
@@ -945,7 +728,7 @@ endif
############################################################################## ##############################################################################
STARTUPS := nrcrt0.o nbcrt0.o nr32crt0.o nb32crt0.o ncrt0.o STARTUPS := nrcrt0.o nbcrt0.o nr32crt0.o nb32crt0.o ncrt0.o mainnb.o mainb.o mainb32.o
############################################################################## ##############################################################################
@@ -955,6 +738,9 @@ all: \
lib/ncrt0.o \ lib/ncrt0.o \
lib/n32bcrt0.o \ lib/n32bcrt0.o \
lib/n32rcrt0.o \ lib/n32rcrt0.o \
lib/mainnb.o \
lib/mainb.o \
lib/mainb32.o \
lib/libm020/libm.a \ lib/libm020/libm.a \
lib/libm.a \ lib/libm.a \
lib/libb/libm.a \ lib/libb/libm.a \
@@ -966,7 +752,7 @@ all: \
clean: clean:
-$(DELETE) $(TYPE) $(LIBS_020) $(STARTUPS) \ -$(DELETE) $(TYPE) $(LIBS_020) $(STARTUPS) \
$(LIBC_OBJS) $(LIBUNIX_OBJS) $(LIBM_OBJS) \ $(LIBC_OBJS) $(LIBUNIX_OBJS) $(LIBM_OBJS) \
$(LIBM881_OBJS) $(LIBNET_OBJS) $(LIBDEBUG_OBJS) \ $(LIBM881_OBJS) $(LIBSTACK_OBJS) $(LIBNET_OBJS) $(LIBDEBUG_OBJS) \
$(LIBAMIGA_OBJS) $(LIBAMIGA_OBJS)
realclean: realclean:
@@ -982,6 +768,7 @@ version:
copy clone c.lib_rev.rev m.lib_rev.rev copy clone c.lib_rev.rev m.lib_rev.rev
copy clone c.lib_rev.rev m881.lib_rev.rev copy clone c.lib_rev.rev m881.lib_rev.rev
copy clone c.lib_rev.rev net.lib_rev.rev copy clone c.lib_rev.rev net.lib_rev.rev
copy clone c.lib_rev.rev stack.lib_rev.rev
copy clone c.lib_rev.rev unix.lib_rev.rev copy clone c.lib_rev.rev unix.lib_rev.rev
bumprev 1 amiga.lib bumprev 1 amiga.lib
bumprev 1 c.lib bumprev 1 c.lib
@@ -989,6 +776,7 @@ version:
bumprev 1 m.lib bumprev 1 m.lib
bumprev 1 m881.lib bumprev 1 m881.lib
bumprev 1 net.lib bumprev 1 net.lib
bumprev 1 stack.lib
bumprev 1 unix.lib bumprev 1 unix.lib
############################################################################## ##############################################################################
@@ -1029,38 +817,47 @@ lib/libm020 : lib
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
lib/libb/libm.a: lib lib/libb lib/libb/libm.a: lib lib/libb
$(MAKE) TYPE=small_data kitchen_sink $(MAKE) TYPE=small_data kitchen_sink
@$(COPY) $(foreach file,$(LIBS_68K),small_data/$(file)) lib/libb $(COPY) $(foreach file,$(LIBS_68K),small_data/$(file)) lib/libb
lib/libb32/libm020/libm.a: lib lib/libb32 lib/libb32/libm020 lib/libb32/libm020/libm.a: lib lib/libb32 lib/libb32/libm020
$(MAKE) TYPE=small_data32 kitchen_sink $(MAKE) TYPE=small_data32 kitchen_sink
@$(COPY) $(foreach file,$(LIBS_020),small_data32/$(file)) lib/libb32/libm020 $(COPY) $(foreach file,$(LIBS_020),small_data32/$(file)) lib/libb32/libm020
lib/libm020/libm.a: lib lib/libm020 lib/libm020/libm.a: lib lib/libm020
$(MAKE) TYPE=large_data_020 kitchen_sink $(MAKE) TYPE=large_data_020 kitchen_sink
@$(COPY) $(foreach file,$(LIBS_020),large_data_020/$(file)) lib/libm020 $(COPY) $(foreach file,$(LIBS_020),large_data_020/$(file)) lib/libm020
lib/libm.a: lib 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/nrcrt0.o : lib nrcrt0.o lib/nrcrt0.o : lib nrcrt0.o
@$(COPY) nrcrt0.o lib $(COPY) nrcrt0.o lib
lib/nbcrt0.o : lib nbcrt0.o lib/nbcrt0.o : lib nbcrt0.o
@$(COPY) nbcrt0.o lib $(COPY) nbcrt0.o lib
lib/ncrt0.o : lib ncrt0.o lib/ncrt0.o : lib ncrt0.o
@$(COPY) ncrt0.o lib $(COPY) ncrt0.o lib
lib/n32bcrt0.o : lib nb32crt0.o lib/n32bcrt0.o : lib nb32crt0.o
@$(COPY) nb32crt0.o lib $(COPY) nb32crt0.o lib
lib/n32rcrt0.o : lib nr32crt0.o lib/n32rcrt0.o : lib nr32crt0.o
@$(COPY) nr32crt0.o lib $(COPY) nr32crt0.o lib
lib/mainnb.o : lib mainnb.o
$(COPY) mainnb.o lib
lib/mainb.o : lib mainb.o
$(COPY) mainb.o lib
lib/mainb32.o : lib mainb32.o
$(COPY) mainb32.o lib
############################################################################## ##############################################################################
@@ -1072,6 +869,8 @@ $(LIBC_OBJS)/stdlib_swapstack.o : stdlib_swapstack.c
$(LIBC_OBJS)/stdlib_setjmp.o : stdlib_setjmp.c $(LIBC_OBJS)/stdlib_setjmp.o : stdlib_setjmp.c
$(LIBSTACK_OBJS)/stdlib_setjmp.o : stdlib_setjmp.c
############################################################################## ##############################################################################
$(LIBC_OBJS)/c.lib_rev.o : c.lib_rev.c c.lib_rev.h $(LIBC_OBJS)/c.lib_rev.o : c.lib_rev.c c.lib_rev.h
@@ -1082,6 +881,8 @@ $(LIBM_OBJS)/m.lib_rev.o : m.lib_rev.c m.lib_rev.h
$(LIBM881_OBJS)/m881.lib_rev.o : m881.lib_rev.c m881.lib_rev.h $(LIBM881_OBJS)/m881.lib_rev.o : m881.lib_rev.c m881.lib_rev.h
$(LIBSTACK_OBJS)/stack.lib_rev.o : stack.lib_rev.c stack.lib_rev.h
$(LIBNET_OBJS)/net.lib_rev.o : net.lib_rev.c net.lib_rev.h $(LIBNET_OBJS)/net.lib_rev.o : net.lib_rev.c net.lib_rev.h
$(LIBDEBUG_OBJS)/debug.lib_rev.o : debug.lib_rev.c debug.lib_rev.h $(LIBDEBUG_OBJS)/debug.lib_rev.o : debug.lib_rev.c debug.lib_rev.h
@@ -1092,46 +893,21 @@ $(LIBAMIGA_OBJS)/amiga.lib_rev.o : amiga.lib_rev.c amiga.lib_rev.h
$(LIBC_OBJS)/stdlib_stacksize.o : stdlib_stacksize.c stdlib_gcc_help.h $(LIBC_OBJS)/stdlib_stacksize.o : stdlib_stacksize.c stdlib_gcc_help.h
$(LIBC_OBJS)/stdlib_getdefstacksize.o : stdlib_getdefstacksize.c stdlib_gcc_help.h
$(LIBC_OBJS)/stdlib_shell_escape.o : stdlib_shell_escape.c stdlib_gcc_help.h $(LIBC_OBJS)/stdlib_shell_escape.o : stdlib_shell_escape.c stdlib_gcc_help.h
$(LIBC_OBJS)/stdlib_alloca.o : stdlib_alloca.c stdlib_memory.h $(LIBC_OBJS)/stdlib_alloca.o : stdlib_alloca.c stdlib_mem_debug.h
$(LIBC_OBJS)/stdlib_calloc.o : stdlib_calloc.c stdlib_memory.h $(LIBC_OBJS)/stdlib_calloc.o : stdlib_calloc.c stdlib_mem_debug.h
$(LIBC_OBJS)/stdlib_free.o : stdlib_free.c stdlib_memory.h $(LIBC_OBJS)/stdlib_free.o : stdlib_free.c stdlib_mem_debug.h
$(LIBC_OBJS)/stdlib_malloc.o : stdlib_malloc.c stdlib_memory.h $(LIBC_OBJS)/stdlib_init_exit.o : stdlib_init_exit.c stdlib_mem_debug.h
$(LIBC_OBJS)/stdlib_realloc.o : stdlib_realloc.c stdlib_memory.h $(LIBC_OBJS)/stdlib_malloc.o : stdlib_malloc.c stdlib_mem_debug.h
$(LIBC_OBJS)/stdlib_red_black.o : stdlib_red_black.c stdlib_memory.h $(LIBC_OBJS)/stdlib_realloc.o : stdlib_realloc.c stdlib_mem_debug.h
############################################################################## $(LIBC_OBJS)/stdlib_red_black.o : stdlib_red_black.c stdlib_mem_debug.h
# The -fbaserel32 option requires the CPU type to be 68020, too.
ifneq (,$(findstring fbaserel32,$(CODE_FLAGS)))
LOCAL_CODE_FLAGS := $(CODE_FLAGS) $(CODE_TYPE)
else
LOCAL_CODE_FLAGS := $(CODE_FLAGS)
endif
$(LIBM881_OBJS)/math_init_exit.o : math_init_exit.c
@echo "Compiling $< [$(TYPE):m881]"
@$(CC) -o $(LIBM881_OBJS)/math_init_exit.o -c $(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) $(LOCAL_CODE_FLAGS) -DM68881_FLOATING_POINT_SUPPORT $(INCLUDES) $<
$(LIBC_OBJS)/stdlib_machine_test.o : stdlib_machine_test.c
@echo "Compiling $< [$(TYPE):c]"
@$(CC) -o $(LIBC_OBJS)/stdlib_machine_test.o -c $(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) $(LOCAL_CODE_FLAGS) $(INCLUDES) $<
$(LIBC_OBJS)/stdlib_showerror.o : stdlib_showerror.c
@echo "Compiling $< [$(TYPE):c]"
@$(CC) -o $(LIBC_OBJS)/stdlib_showerror.o -c $(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) $(LOCAL_CODE_FLAGS) $(INCLUDES) $<
$(LIBC_OBJS)/stdlib_main.o : stdlib_main.c
@echo "Compiling $< [$(TYPE):c]"
@$(CC) -o $(LIBC_OBJS)/stdlib_main.o -c $(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) $(LOCAL_CODE_FLAGS) $(INCLUDES) stdlib_main.c
############################################################################## ##############################################################################
@@ -1221,6 +997,16 @@ $(LIBM881_OBJS)/libm881.a : $(LIBM881_OBJS) $(foreach file,$(MATH_LIB_881),$(LIB
############################################################################## ##############################################################################
$(LIBSTACK_OBJS) :
$(MAKEDIR) $@
$(LIBSTACK_OBJS)/libstack.a : $(LIBSTACK_OBJS) $(foreach file,$(STACK_LIB),$(LIBSTACK_OBJS)/$(file))
-$(DELETE) $@
@$(AR) $@ $(foreach file,$(STACK_LIB),$(LIBSTACK_OBJS)/$(file))
$(RANLIB) $@
##############################################################################
$(LIBNET_OBJS) : $(LIBNET_OBJS) :
$(MAKEDIR) $@ $(MAKEDIR) $@
@@ -1252,49 +1038,25 @@ $(LIBAMIGA_OBJS)/libamiga.a : $(LIBAMIGA_OBJS) $(foreach file,$(AMIGA_LIB),$(LIB
############################################################################## ##############################################################################
nrcrt0.o : nrcrt0.S nrcrt0.o : nrcrt0.S
@echo "Assembling $< [resident]" $(CC) -traditional -o $@ -c nrcrt0.S
@$(CC) -traditional -o $@ -c nrcrt0.S
nr32crt0.o : nrcrt0.S nr32crt0.o : nrcrt0.S
@echo "Assembling $< [resident32]" $(CC) -traditional -m68020 -DSMALL_DATA32 -o $@ -c nrcrt0.S
@$(CC) -traditional -m68020 -DSMALL_DATA32 -o $@ -c nrcrt0.S
nbcrt0.o : ncrt0.S nbcrt0.o : ncrt0.S
@echo "Assembling $< [small_data]" $(CC) -traditional -DSMALL_DATA -o $@ -c ncrt0.S
@$(CC) -traditional -DSMALL_DATA -o $@ -c ncrt0.S
nb32crt0.o : ncrt0.S nb32crt0.o : ncrt0.S
@echo "Assembling $< [small_data32]" $(CC) -traditional -m68020 -DSMALL_DATA32 -o $@ -c ncrt0.S
@$(CC) -traditional -m68020 -DSMALL_DATA32 -o $@ -c ncrt0.S
ncrt0.o : ncrt0.S ncrt0.o : ncrt0.S
@echo "Assembling $< [large_data]" $(CC) -traditional -o $@ -c ncrt0.S
@$(CC) -traditional -o $@ -c ncrt0.S
############################################################################## mainb32.o : stdlib_main.c
$(CC) -o mainb32.o -c $(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) $(INCLUDES) -fbaserel32 -DSMALL_DATA32 -m68020-60 -DM68020 stdlib_main.c
CONSTRUCTOR_FILES = \ mainb.o : stdlib_main.c
amiga_rexxvars.c \ $(CC) -o mainb.o -c $(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) $(INCLUDES) -fbaserel -DSMALL_DATA -m68000 stdlib_main.c
dirent_closedir.c \
locale_init_exit.c \
math_init_exit.c \
sas_profile.c \
socket_init_exit.c \
stdio_file_init.c \
stdio_init_exit.c \
stdlib_alloca.c \
stdlib_arg.c \
stdlib_malloc.c \
stdlib_program_name.c \
stdlib_setenv.c \
stdlib_stackcheck.c \
stdlib_stackextension.c \
time_clock.c \
unistd_chdir_exit.c \
unistd_init_exit.c \
unistd_timer.c \
unistd_wildcard_expand.c \
usergroup_init_exit.c
touch_constructor_files: mainnb.o : stdlib_main.c
touch $(CONSTRUCTOR_FILES) $(CC) -o mainnb.o -c $(WARNINGS) $(OPTIMIZE) $(DEBUG) $(OPTIONS) $(INCLUDES) -m68000 stdlib_main.c

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +0,0 @@
C99 math functions:
fma() and fmaf() should be implemented as a true "fused" multiply
and add function rather than the sequential operation implied in the
current implementation.

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga.lib_rev.c,v 1.3 2006-01-08 12:04:21 obarthel Exp $ * $Id: amiga.lib_rev.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,6 +1,6 @@
#define VERSION 1 #define VERSION 1
#define REVISION 201 #define REVISION 187
#define DATE "21.9.2006" #define DATE "29.1.2005"
#define VERS "amiga.lib 1.201" #define VERS "amiga.lib 1.187"
#define VSTRING "amiga.lib 1.201 (21.9.2006)\r\n" #define VSTRING "amiga.lib 1.187 (29.1.2005)\r\n"
#define VERSTAG "\0$VER: amiga.lib 1.201 (21.9.2006)" #define VERSTAG "\0$VER: amiga.lib 1.187 (29.1.2005)"

View File

@@ -1 +1 @@
201 187

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_acrypt.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_acrypt.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -31,14 +31,10 @@
* POSSIBILITY OF SUCH DAMAGE. * POSSIBILITY OF SUCH DAMAGE.
*/ */
#define ACrypt __ACrypt
#include <exec/types.h> #include <exec/types.h>
#include <string.h> #include <string.h>
#include <clib/alib_protos.h> #include <clib/alib_protos.h>
#undef ACrypt
/****************************************************************************/ /****************************************************************************/
#include "debug.h" #include "debug.h"

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_addtof.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_addtof.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -57,7 +57,7 @@ typedef LONG (* CFUNC)(APTR arg);
/****************************************************************************/ /****************************************************************************/
STATIC LONG INTERRUPT ASM static LONG INTERRUPT ASM
call_routine(REG(a1,struct Isrvstr *i)) call_routine(REG(a1,struct Isrvstr *i))
{ {
CFUNC p = (CFUNC)i->ccode; CFUNC p = (CFUNC)i->ccode;

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_argarraydone.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_argarraydone.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_argarrayinit.c,v 1.6 2006-09-22 09:02:51 obarthel Exp $ * $Id: amiga_argarrayinit.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -61,11 +61,11 @@ struct DiskObject * CXLIB_disko;
STRPTR * STRPTR *
ArgArrayInit(LONG argc, CONST_STRPTR * argv) ArgArrayInit(LONG argc, CONST_STRPTR * argv)
{ {
STRPTR * result = NULL; unsigned char ** result = NULL;
if(argc != 0) /* run from CLI */ if(argc != 0) /* run from CLI */
{ {
LONG i; int i;
if(argc == 1) if(argc == 1)
goto out; /* skip command name */ goto out; /* skip command name */
@@ -75,9 +75,9 @@ ArgArrayInit(LONG argc, CONST_STRPTR * argv)
goto out; goto out;
for(i = 1 ; i < argc ; i++) for(i = 1 ; i < argc ; i++)
CXLIB_argarray[i-1] = (unsigned char *)argv[i]; CXLIB_argarray[i-1] = argv[i];
result = (STRPTR *)CXLIB_argarray; result = (unsigned char **)CXLIB_argarray;
} }
else if (IconBase != NULL) else if (IconBase != NULL)
{ {
@@ -90,7 +90,7 @@ ArgArrayInit(LONG argc, CONST_STRPTR * argv)
if(CXLIB_disko == NULL) if(CXLIB_disko == NULL)
goto out; goto out;
result = (STRPTR *)CXLIB_disko->do_ToolTypes; result = (unsigned char **)CXLIB_disko->do_ToolTypes;
} }
out: out:

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_argint.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_argint.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_argstring.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_argstring.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_beginio.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_beginio.c,v 1.3 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_callhook.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_callhook.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
* *
* $Id: amiga_callhooka.asm,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_callhooka.asm,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=8 * :ts=8
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_callhooka.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_callhooka.c,v 1.2 2005-01-02 09:07:06 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_coercemethod.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_coercemethod.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_createextio.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_createextio.c,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_createport.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_createport.c,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_createstdio.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_createstdio.c,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_createtask.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_createtask.c,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,12 +46,6 @@
/****************************************************************************/ /****************************************************************************/
#ifndef _STDLIB_PROFILE_H
#include "stdlib_profile.h"
#endif /* _STDLIB_PROFILE_H */
/****************************************************************************/
#include "macros.h" #include "macros.h"
#include "debug.h" #include "debug.h"

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_deleteextio.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_deleteextio.c,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_deleteport.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_deleteport.c,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_deletestdio.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_deletestdio.c,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_deletetask.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_deletetask.c,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_domethod.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_domethod.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_dosupermethod.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_dosupermethod.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_dotimer.c,v 1.8 2006-04-05 06:43:56 obarthel Exp $ * $Id: amiga_dotimer.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -44,34 +44,11 @@
/****************************************************************************/ /****************************************************************************/
#ifndef _STDLIB_PROFILE_H
#include "stdlib_profile.h"
#endif /* _STDLIB_PROFILE_H */
/****************************************************************************/
#include "macros.h" #include "macros.h"
#include "debug.h" #include "debug.h"
/****************************************************************************/ /****************************************************************************/
/* A quick workaround for the timeval/timerequest->TimeVal/TimeRequest
change in the recent OS4 header files. */
#if defined(__NEW_TIMEVAL_DEFINITION_USED__)
#define timeval TimeVal
#define tv_secs Seconds
#define tv_micro Microseconds
#define timerequest TimeRequest
#define tr_node Request
#define tr_time Time
#endif /* __NEW_TIMEVAL_DEFINITION_USED__ */
/****************************************************************************/
LONG LONG
DoTimer(struct timeval *tv,LONG unit,LONG command) DoTimer(struct timeval *tv,LONG unit,LONG command)
{ {
@@ -81,23 +58,6 @@ DoTimer(struct timeval *tv,LONG unit,LONG command)
assert( tv != NULL ); assert( tv != NULL );
#if defined(__amigaos4__)
{
mp = AllocSysObjectTags(ASOT_PORT,
ASOPORT_Action, PA_SIGNAL,
ASOPORT_AllocSig, FALSE,
ASOPORT_Signal, SIGB_SINGLE,
ASOPORT_Target, FindTask(NULL),
TAG_DONE);
if(mp == NULL)
{
error = IOERR_OPENFAIL;
goto out;
}
}
#else
{
mp = AllocVec(sizeof(*mp),MEMF_ANY|MEMF_PUBLIC|MEMF_CLEAR); mp = AllocVec(sizeof(*mp),MEMF_ANY|MEMF_PUBLIC|MEMF_CLEAR);
if(mp == NULL) if(mp == NULL)
{ {
@@ -109,10 +69,7 @@ DoTimer(struct timeval *tv,LONG unit,LONG command)
mp->mp_Flags = PA_SIGNAL; mp->mp_Flags = PA_SIGNAL;
mp->mp_SigBit = SIGB_SINGLE; mp->mp_SigBit = SIGB_SINGLE;
mp->mp_SigTask = FindTask(NULL); mp->mp_SigTask = FindTask(NULL);
NewList(&mp->mp_MsgList); NewList(&mp->mp_MsgList);
}
#endif /* __amigaos4__ */
tr = (struct timerequest *)CreateIORequest(mp,sizeof(*tr)); tr = (struct timerequest *)CreateIORequest(mp,sizeof(*tr));
if(tr == NULL) if(tr == NULL)
@@ -131,7 +88,7 @@ DoTimer(struct timeval *tv,LONG unit,LONG command)
PROFILE_OFF(); PROFILE_OFF();
SetSignal(0,(1UL << mp->mp_SigBit)); SetSignal(0,SIGF_SINGLE);
error = DoIO((struct IORequest *)tr); error = DoIO((struct IORequest *)tr);
@@ -150,16 +107,7 @@ DoTimer(struct timeval *tv,LONG unit,LONG command)
DeleteIORequest((struct IORequest *)tr); DeleteIORequest((struct IORequest *)tr);
} }
#if defined(__amigaos4__)
{
if(mp != NULL)
FreeSysObject(ASOT_PORT,mp);
}
#else
{
FreeVec(mp); FreeVec(mp);
}
#endif /* __amigaos4__ */
return(error); return(error);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_fastrand.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_fastrand.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_freeievents.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_freeievents.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
* *
* $Id: amiga_hookentry.asm,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_hookentry.asm,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=8 * :ts=8
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_hookentry.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_hookentry.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_hotkey.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_hotkey.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_invertstring.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_invertstring.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -49,7 +49,7 @@
/****************************************************************************/ /****************************************************************************/
STATIC int static int
do_escape(int cc) do_escape(int cc)
{ {
int result; int result;
@@ -91,7 +91,7 @@ do_escape(int cc)
/****************************************************************************/ /****************************************************************************/
STATIC ULONG static ULONG
do_angle(STRPTR * strp, struct InputEvent *ie) do_angle(STRPTR * strp, struct InputEvent *ie)
{ {
ULONG result; ULONG result;

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_newlist.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_newlist.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_rangerand.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_rangerand.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_remtof.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_remtof.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_rexxvars.c,v 1.8 2006-09-22 09:02:51 obarthel Exp $ * $Id: amiga_rexxvars.c,v 1.3 2005-01-09 10:10:40 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -34,20 +34,12 @@
/* We don't want to pull in <clib/alib_protos.h> */ /* We don't want to pull in <clib/alib_protos.h> */
#define CLIB_ALIB_PROTOS_H #define CLIB_ALIB_PROTOS_H
/****************************************************************************/
#ifndef _STDLIB_HEADERS_H #ifndef _STDLIB_HEADERS_H
#include "stdlib_headers.h" #include "stdlib_headers.h"
#endif /* _STDLIB_HEADERS_H */ #endif /* _STDLIB_HEADERS_H */
/****************************************************************************/ /****************************************************************************/
#ifndef _STDLIB_CONSTRUCTOR_H
#include "stdlib_constructor.h"
#endif /* _STDLIB_CONSTRUCTOR_H */
/****************************************************************************/
#include <rexx/rxslib.h> #include <rexx/rxslib.h>
#include <rexx/errors.h> #include <rexx/errors.h>
@@ -68,7 +60,7 @@ static struct RexxSysIFace * IRexxSys;
/****************************************************************************/ /****************************************************************************/
CLIB_CONSTRUCTOR(rexxvars_init) CLIB_CONSTRUCTOR(__rexxvars_init)
{ {
ENTER(); ENTER();
@@ -88,14 +80,12 @@ CLIB_CONSTRUCTOR(rexxvars_init)
} }
#endif /* __amigaos4__ */ #endif /* __amigaos4__ */
LEAVE();
CONSTRUCTOR_SUCCEED(); CONSTRUCTOR_SUCCEED();
} }
/****************************************************************************/ /****************************************************************************/
CLIB_DESTRUCTOR(rexxvars_exit) CLIB_DESTRUCTOR(__rexxvars_exit)
{ {
ENTER(); ENTER();
@@ -154,7 +144,7 @@ CheckRexxMsg(struct RexxMsg *message)
LONG LONG
GetRexxVar(struct RexxMsg *message,STRPTR variable_name,STRPTR *buffer_pointer) GetRexxVar(struct RexxMsg *message,STRPTR variable_name,STRPTR *buffer_pointer)
{ {
static TEXT buffer[256]; static UBYTE buffer[256];
LONG result; LONG result;
/* The following uses a function which was added to rexxsyslib.library V45. /* The following uses a function which was added to rexxsyslib.library V45.

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_setsuperattrs.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_setsuperattrs.c,v 1.3 2005-01-09 10:10:41 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -46,7 +46,7 @@
/****************************************************************************/ /****************************************************************************/
STATIC ULONG static ULONG
SetSuperAttrsA(Class * cl,Object * obj,struct TagItem * tags) SetSuperAttrsA(Class * cl,Object * obj,struct TagItem * tags)
{ {
ULONG result = 0; ULONG result = 0;

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_timedelay.c,v 1.4 2006-04-05 06:43:56 obarthel Exp $ * $Id: amiga_timedelay.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -39,19 +39,6 @@
/****************************************************************************/ /****************************************************************************/
/* A quick workaround for the timeval/timerequest->TimeVal/TimeRequest
change in the recent OS4 header files. */
#if defined(__NEW_TIMEVAL_DEFINITION_USED__)
#define timeval TimeVal
#define tv_secs Seconds
#define tv_micro Microseconds
#endif /* __NEW_TIMEVAL_DEFINITION_USED__ */
/****************************************************************************/
LONG LONG
TimeDelay(LONG unit,ULONG seconds,ULONG micros) TimeDelay(LONG unit,ULONG seconds,ULONG micros)
{ {

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: amiga_waitbeam.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: amiga_waitbeam.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,31 +0,0 @@
; Simple release archive build script for Amiga systems.
; Set the name of the archive and the directory the
; files go into
set dir_name clib2-1.`type c.lib_rev.rev`
; Start with a clean slate
delete all quiet ram:$dir_name
; Create the directory, copy all the libraries, header files
; and release note files inside.
makedir ram:$dir_name
copy lib ram:${dir_name}/lib all clone quiet
copy include ram:${dir_name}/include all clone quiet
copy changes ram:$dir_name clone
; Delete the CVS data from the include directory
delete ram:${dir_name}/include/CVS ram:${dir_name}/include/sys/CVS ram:${dir_name}/include/arpa/CVS ram:${dir_name}/include/netinet/CVS all quiet
; Finally, create an lha archive in RAM:
pushcd ram:
lha -r -x -a a ${dir_name}-gcc-68k.lha ${dir_name}
popcd
; Move the archive back to this directory
copy ram:${dir_name}-gcc-68k.lha "" clone
; Clean up...
delete ram:$dir_name all quiet
unset dir_name

View File

@@ -1,27 +0,0 @@
#!/bin/sh
# Simple release archive build script for Unix systems.
# I typically build the library with a cross compiler.
# Set the name of the archive and the directory the
# files go into
export dir_name=clib2-1.`cat c.lib_rev.rev`
# Start with a clean slate
rm -rf $dir_name
# Create the directory, copy all the libraries, header files
# and release note files inside.
mkdir $dir_name
cp -a lib $dir_name
cp -a lib.threadsafe $dir_name
cp -a include $dir_name
cp changes $dir_name
# Delete the CVS data from the include directory
rm -rf ${dir_name}/include/CVS ${dir_name}/include/sys/CVS ${dir_name}/include/arpa/CVS ${dir_name}/include/netinet/CVS
# Finally, create an lha type 5 archive; the Amiga LhA port
# can unpack it.
lha ao5q ${dir_name}-gcc-os4.lha ${dir_name}

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: c.lib_rev.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: c.lib_rev.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,6 +1,6 @@
#define VERSION 1 #define VERSION 1
#define REVISION 201 #define REVISION 187
#define DATE "21.9.2006" #define DATE "29.1.2005"
#define VERS "c.lib 1.201" #define VERS "c.lib 1.187"
#define VSTRING "c.lib 1.201 (21.9.2006)\r\n" #define VSTRING "c.lib 1.187 (29.1.2005)\r\n"
#define VERSTAG "\0$VER: c.lib 1.201 (21.9.2006)" #define VERSTAG "\0$VER: c.lib 1.187 (29.1.2005)"

View File

@@ -1 +1 @@
201 187

View File

@@ -1,965 +1,3 @@
c.lib 1.201 (21.9.2006)
- If defined, the local environment variable "DISABLE_COMMANDLINE_WILDCARD_EXPANSION"
will disable expansion of wildcard patterns passed on the command line.
Note that if the variable is not set then the global variable
'__expand_wildcard_args' will provide the defaults for the switch that
controls whether the wildcard expansion takes place. And after the
environment variable has been checked, the '__expand_wildcard_args_check'
function pointer can still be used to override the switch.
- fstat() now works with "NIL:" and "/dev/null", respectively. Not that
it returns much useful information, though.
- The _PC_MAX_INPUT query for file handles now returns the default
buffer size.
- Integrated the new OS4 build makefile collection, as contributed by
Steven Solie. Thank you very much!
- Added the missing strerror_r() function.
- fpathconf() should work with the stdio streams, even in the thread-safe
library version, again.
- Updated m68k specs file in /documentation to contain an own __CLIB2__
define so that existing m68k compilers also have this define. In addition,
the common "-noixemul" option can now also be specified but will do a NOP
so that Makefiles sharing multiple runtime lib setups work without
a warning.
- Added a new callback function which can be used in programs which want
to avoid that the command line wildcard expansion takes place.
- __get_default_file() now dynamically fills in file handles for the
stdin/stdout/stderr streams if it's part of the thread-safe library.
- fpathconf() now checks if the file descriptor is really referring to a file.
- The termios hook entry code could file descriptor's embedded file handle
rather than what the thread safe library had dynamically bound to the
stdin/stdout/stderr streams.
- execve() now finds commands in the current directory again, even if you
omit the leading "./" path name.
- The execve() code that looks for the command/script file now begins by
checking if the file name includes path separators. If it does not,
then the search for the command begins with the resident command list;
otherwise the local directories are checked. The new code also properly
cleans up after itself (a FreeDeviceProc() was missing) and the "PROGDIR:"
lock now always refers to the directory in which the command/script
file is found.
- Added the missing fdim() and fdimf() functions to the build
makefiles. The OS4 build makefile was missing lrint() and
lrintf(). Ouch.
- Added the POSIX exec() family functions, based upon code contributed
by Henning Nielsen Lund. Thank you very much!
- atoll() no longer sets 'errno' directly but now calls __set_errno()
instead.
- Added pathconf(), fpathconf(), sysinfo(), ftime(), ulimit(), getrlimit()
and setrlimit() as contributed by Peter Bengtsson. Thank you very much!
- Added the missing S_ISSOCKET() macro to <sys/stat.h>. Note that this
is not actually a POSIX feature.
- Added fmin(), fminf(), fmax() and fmaxf() to the build makefiles.
Somehow I must have forgotten about them :-(
- select() and waitselect() can now be called without any file descriptor
sets to work with, as some software does which uses select() in place
of sleep().
- The <sys/ioctl.h> header file now includes both <sys/select.h> and
<sys/filio.h> for better compatibility with the TCP/IP stack header
files.
- Added the global variable __expand_wildcard_args which can be used
to disable wildcard pattern expansion of command line parameters when
linked against "libunix.a". Note that this has no effect on the "regular"
libc.a behaviour.
c.lib 1.200 (17.4.2006)
- The default break signal mask (SIGBREAKF_CTRL_C) is no longer
hard-coded. You can override it at link time with a different
variable value for __break_signal_mask. This may have to be
augmented by an API for changing the value.
- Added a waitselect() function which works very much like the
bsdsocket.library/WaitSelect() function.
- Added <sys/time.h> include to <sys/socket.h> due to latest "TimeVal" change
in the OS4 SDK. Otherwise "struct timeval" will not be defined at the time
the <net/if.h> of the netincludes will be included by <proto/bsdsocket.h>.
- The strftime() hook function had the locale and character parameters
switched, which made 'setlocale(LC_ALL,""); strftime(..);' unusable.
Fixed.
- fchown() and chown() now accept owner and group ID values of -1, which
indicate that the respective information should not be changed.
- The OS4 library build now includes the crtbegin.o and crtend.o object
files in the libc.a library, which solves a problem with the thread-safe
shared library support code.
c.lib 1.199 (6.3.2006)
- In <stdio.h> MAXPATHLEN is now equivalent to PATH_MAX (from <limits.h>),
as suggested by Henning Nielsen Lund.
- Added lockf() support, as supplied by Henning Nielsen Lund.
Thank you very much!
- symlink() now also works for absolute and relative links, and is
part of "libunix.a". This patch was supplied by Henning Nielsen Lund.
Thank you very much!
- The __main() stub function expected by the 68k GCC build is no
longer part of "stdlib_main.c". This helps the C++ support, since the
__main symbol definition no longer clashes with the definition in
"libgcc.a".
- The printf() family stripped trailing zeroes from the integer part
of %g output. Fixed.
- Moved an allocation size roundup operation in realloc().
c.lib 1.198 (11.12.2005)
- Added <fenv.h> for C99, and the (yet unimplemented) functions
feclearexcept(), fegetenv(), fegetexceptflag(), fegetround(),
feholdexcept(), feraiseexcept(), fesetenv(), fesetexceptflag(),
fetestexcept(), fetestround() and feupdateenv().
- Replaced the old pow() implementation. However, powf() may need to
be changed to set a domain error.
- In libunix.a malloc(), calloc() and realloc() no longer treat a
request to allocate 0 bytes as an error, returning NULL. They all
return a pointer sized memory chunk (= four bytes) initialized to
NULL (= 0) instead.
- The alloca() implementation which allocates memory from the system
rather than the local stack frame is thread-safe now. It also
interacts with the realloc(), calloc(), free() and malloc() functions
in that the alloca() cleanup routine is called once alloca() has
done its job. If all the memory allocated through alloca() has been
released no further calls to the cleanup function will be made.
- In the thread-safe library, realloc() permitted two different overlapping
calls to succeed in trying to reallocate the same chunk of memory due to
a race condition. Fixed.
- Added a new function __get_mem_stats() (the prototype is in <dos.h>) which
can be used to query the current and maximum memory usage, counting the
allocations performed through malloc(), free() and all other functions which
use them.
- Added another function called __reset_max_mem_stats() which will reset the
counters for "maximum amount of memory used" and "maximum number of chunks
allocated" to the current figures for these values.
- Fixed the alloca() declaration in <stdlib.h> so that software which keys
off the fact whether or not the alloca preprocessor symbol is defined
will do the right thing.
- Added an optional call-back function which can be called if alloca()
is about to return NULL, which some software does not consider.
Rather than letting such software drop into an illegal memory access
or worse, that call-back function will be invoked instead, which can
print an error message and eventually call abort().
c.lib 1.197 (4.11.2005)
- Updated math_hypot.c to a newer (e_hypot.c 1.3 95/01/18) version from
fdlibm which uses macros for manipulating the high and low words of a
double, like the rest of fdlibm functions in clib2. The previous version
would give bogus results when compiled with -O3 in clib2 which lead to
"interesting" results (and lots of fun while searching for the problem)
in Ghostscript. Wish I managed to track this down yesterday for 1.196
release... <aantonijevic>
- Implemented atanh() and atanhf() which were not listed in the TODO
file but were still unimplemented up until now.
- Replaced ldexp() and modf().
- Added __set_h_errno() and __get_h_errno() functions.
- The thread-safe library now tries to enable bsdsocket.library base
sharing and attempts to make the TCP/IP stack call the local
__set_errno() and __set_h_errno(), so that any Process calling
the library functions will get a chance to see proper error
codes. Whether any of these features could be enabled can be tested
through two global variables __can_share_socket_library_base and
__thread_safe_errno_h_errno which are defined in <dos.h>. Note that
for both features to work you will need the Roadshow bsdsocket.library
version 4.275 or higher.
- In <stdbool.h> the preprocessor definition should read
"__bool_true_false_are_defined" rather than "__bool_true_and_false_are_defined".
Thanks go to Peter Bengtsson for finding and fixing it.
- The network startup code no longer checks for the presence of a possible
daemon startup message by default. You now have to enable this feature
by declaring a global variable called "__check_daemon_startup" which is
described in <dos.h>.
- Moved the code which rebinds the standard I/O streams to the server
socket into a separate function which can be overridden by user code.
- Updated the new __obtain_daemon_message() function to call a
bsdsocket.library API function to determine if what appears to be
a valid daemon startup message is sound.
- Replaced the OS4 specific build makefile with an updated version
prepared by Steven Solie. Thank you very much!
c.lib 1.196 (11.10.2005)
- Removed the various workarounds associated with <unistd.h>, required
for building code that references the networking API. It is now possible,
provided you build your code with an existing TCP/IP API header file
set (such as from the "Roadshow" SDK) without running into data type
or function prototype declaration conflicts. I have added local versions
of <arpa/inet.h>, <netinet/in.h>, <netdb.h>, <sys/filio.h>, <sys/ioccom.h>,
<sys/ioctl.h>, <sys/select.h> and <sys/socket.h> and updated <unistd.h>,
<pwd.h> and <grp.h> accordingly. Note that some of the function prototypes
will conflict with the bsdsocket.library/usergroup.library API, which is
why you can disable the declarations through the __NO_NET_API preprocessor
symbol: if defined, none of the function prototypes will be defined.
- Implemented lrintf(), lrint(), lroundf(), lround(), nearbyintf(),
nearbyint(), remquof(), remquo(), roundf(), round(), tgammaf(),
tgamma(), truncf(), trunc(). Sort of implemented fmaf() and fma(),
which really ought to be done in "SIMD" fashion.
This completes the "real" floating point math library (ignoring
for a moment that the floating point environment code is still
not implemented).
- accept() now calls the bsdsocket.library accept() function first
and then hooks up the socket with the clib2 data structures. This
makes it possible to have several Processes calling the accept()
stub at the same time.
- When the main() function returns directly or indirectly by way of
calling exit(), the IoErr() value set at this time will now be
preserved until the program really returns control to the shell.
This turned out to be easier to implement than I had originally
thought, thanks to the fact that the atexit() functions are all
invoked straight after the exit() call.
- strtoimax(), strtoumax(), strtod(), strtof(), strtol(), strtoll(),
strtoul() and strtoull() now count how many digits were converted.
If that number is zero, then the conversion is considered to have
failed: 0 is returned and the 'ptr' parameter reference is initialized
with a pointer to the string to be converted. This has two consequences:
1) A floating point number that has no digits in the significand
is no longer converted to zero. For example ".e10" can no longer
result in a successful conversion.
2) You can detect if a conversion is successful by comparing pointers
after the conversion function has returned:
char * str;
char * ptr;
long n;
n = strtol(str,&ptr,10);
if(n == 0 && str == ptr)
printf("conversion has failed");
- Following detection of a stack overflow, the startup code eventually
called _exit(). It should have called exit() instead.
- tmpnam() wrote more than L_tmpnam bytes to the name buffer. Also, the
TMP_MAX value was off by one.
c.lib 1.195 (3.9.2005)
- In __time_delay() the CheckIO() test was wrong and should have
tested for a request still in progress. Fixed.
- Modified select() to support plain files, too. The new code now
compares the current file position against the current file size,
if that file is on a file system, or simply checks if there is
any data in the file (which works for the default PIPE: device).
- The raw file descriptor structure member fd_Position is now
always updated, regardless of whether the file supports random
access or not.
- The wildcard escape character used in __wildcard_expand_init() was
wrong. It should have been "'" but it was "`". Fixed.
- The startup code now references the linker symbol generated for
the user-supplied main() function.
- log(+/-0), logb(+/-0), log10(+/-0) now return -infinity.
- getcwd() now considers a buffer size of 0 an error, and it sets
the errno code to ERANGE if the buffer is too small.
- With Unix path semantics enabled, rename() now fails if either
the old or the new name are empty strings. Same thing for
opendir(), utime(), unlink(), chown(), link(), readlink(),
realpath(), chdir(), access(), stat(), rmdir(), lstat(),
chmod(), statfs() and open()/fopen().
- Fixed several issues with the formatted output of strftime()
for the "C" locale: "%p" could return " PM", "%c" is now
equivalent to "%a %b %e %T %Y", "%x" is equivalent to "%m/%d/%y"
and "%X" is now equivalent to "%T".
- The 68020/030/040/060 versions of the library now include the
64 bit integer conversion code. The plain 68000 version does not.
- The 64 bit integer conversion code used in by the scanf() family
was broken due to a misplaced overflow check, which had the cruel
effect of triggering for 32 bit integers as well. Fixed.
- DoTimer() did not allocate the local MsgPort correctly. Fixed.
c.lib 1.194 (15.7.2005)
- Added getopt_long to libunix.a <tfrieden>
- Added new libprofile.a which implements gprof gmon.out output <tfrieden>
- Added the function profil() to libc.a <tfrieden>
- Added ftello() and fseeko() which both merely call the equivalent (at
least for clib2) ftell() and fseek() functions, respectively.
- statfs() never stated that a disk was mounted for read-only access
because the wrong InfoData structure member was tested. Fixed.
- lstat would overwrite the name parameter via ReadLink(..., name, ...)
instead of ReadLink(..., new_name, ...) <tfrieden>
- Implemented exp2()/exp2f() and log2()/log2f() as suggested by
Henning Nielsen Lund. Thank you very much!
- The pattern matching code which expands command line arguments, as part
of libunix.a, now translates the "*" wildcard into "#?" unless you prefix
it with a backtick ("'"), which is the wildcard pattern escape character
used on AmigaOS.
- Repaired the pattern matching code which expands command line arguments:
it no longer requires that any parameters are quoted and it is automatically
enabled if you link against libunix.a, without libc.a standing a chance to
accidentally override it.
- Fixed a bug in vfprintf that would surface when the buffer was enlarged
if the pattern was too large to fit the static internal buffer <tfrieden>
- Added file system names to statfs <tfrieden>
- Moved all the constructor code out of "stdlib_init_exit.c" and into the
files which initialize global data, such as the new "stdlib_program_name.c"
and "stdlib_malloc.c".
- Until I can find a way to invoke it from within the library, the
__machine_test() function is no longer invoked.
- Tagged global data with NOCOMMON attributes.
- Added the __lib_init() and __lib_exit() functions, which are part of the
thread-safe library and which can be used to hook up clib2 with standard
Amiga shared library/device code. Some documentation on how to use them
can be found in the <dos.h> header file.
- Added a complete shared library skeleton example to demonstrate how the
clib2 shared library initialization/cleanup functions should be used.
This is a dual-build library which will both work with the plain 68k
AmigaOS and the PowerPC native AmigaOS4. The example source code can be
found in the "skeleton_library" subdirectory.
- The thread-safe version of isatty() should now work for stdio
file descriptors, too.
- Retrofitted thread-safety into the termios code.
- The socket/usergroup API function and data type definitions that used to
be defined in <unistd.h> have been moved into a separate header file
<sys/clib2_net.h> which, for backwards compatibility, can be include
from within <unistd.h> if the preprocessor symbol __USE_CLIB2_NETLIB
is defined early on. Eventually, <sys/clib2_net.h> should be removed
from the general header files and become a local library build header
file altogether. Note that in this case you would have to build your
own software using common TCP/IP SDK header files.
- <sys/types.h> now also includes <time.h> and <stddef.h>.
c.lib 1.193 (4.6.2005)
- fpclassify() now returns FP_ZERO both for 0 and -0.
- nan() and nanf() now return quiet NaNs.
- Added internal __inf() and __inff() functions.
- strtof() now calls nanf() and __inff(), respectively, to produce
the special floating point values for nan/inf/infinity.
- strtod() now calls nan() and __inf(), respectively, to produce
the special floating point values for nan/inf/infinity.
- The scanf() family now calls nan() and __inf(), respectively, to
produce the special floating point values for nan/inf/infinity.
- Added %D, %e, %F, %g, %G and %h for strftime(); repaired %I.
- Documented __strip_double_slash() and plugged in a memmove()
in place of the copying loop.
- Modified __translate_unix_to_amiga_path_name() and
__translate_amiga_to_unix_path_name() to not to call strlen()
on the results of __strip_double_slash().
- For %C strtime() should return the century number, not the
year number mod 100.
- The record locking code in fcntl() is no longer part of the
regular libc.a, but only of libunix.a.
- Changed the definition of the D_S() macro to cast the pointer
address to an unsigned 32 bit integer.
- Modified the locale-aware isalnum(), isalpha(), iscntrl(),
isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(),
isupper(), isxdigit(), tolower() and toupper() functions
to clamp the input parameter to the "unsigned char" range before
it is submitted to the respective locale.library function. This
should be in sync with what the specs demand, which state that
if the input parameter is neither EOF nor in the range of an
"unsigned char" variable, then the results are undefined.
- ungetc() now returns the input character, clamped to an unsigned
char value, upon success. Previously, if the input parameter was
negative and not EOF, the result was identical to the input, which
could have had negative side-effects.
- Added NAN, INFINITY, FLT_EVAL_METHOD, float_t and double_t to
<math.h> (C99).
- Added skeleton code for acosf(), acosh(), acoshf(), asinf(), asinh(),
asinhf(), atan2f(), atanf(), atanh(), atanhf(), cbrt(), cbrtf(),
ceilf(), cosf(), coshf(), erf(), erfc(), erfcf(), erff(),
exp2(), exp2f(), expf(), expm1(), expm1f(), fdim(), fdimf(),
floorf(), fma(), fmaf(), fmax(), fmaxf(), fmin(), fminf(),
fmodf(), frexpf(), hypotf(), ilogb(), ilogbf(), ldexpf(), lgamma(),
lgammaf(), log10f(), log1p(), log1pf(), log2(), log2f(), logbf(),
logf(), lrint(), lrintf(), lround(), lroundf(), modff(), nearbyint(),
nearbyintf(), powf(), remainder(), remainderf(), remquo(), remquof(), round(),
roundf(), scalbn(), scalbnf(), sinf(), sinhf(), sqrtf(), tanf(),
tanhf(), tgamma(), tgammaf(), trunc() and truncf(), to be filled in
later...
- Implemented fmin()/fminf(), fmax()/fmaxf(), fdim()/fdimf() for C99.
- Ported acosf(), asinf(), atan2f(), atanf(), ceilf(), expf(), floorf(),
fmodf(), frexpf(), ldexpf(), log10f(), logbf(), logf(), modff(), powf(), sqrtf(),
scalbn() and scalbnf() for C99.
- Ported cbrt(), cbrtf(), erf(), erff(), erfc(), erfcf(), expm1(),
expm1f(), ilogb(), ilogbf(), log1p() and log1pf() for C99.
- Ported cosf(), coshf(), sinf(), sinhf(), tanf(), tanhf()
and hypotf() for C99.
- Ported acosh(), acoshf(), asinh(), asinhf(), lgamma(), lgammaf(),
remainder() and remainderf() for C99.
- The scanf() family now supports character ranges for the %[
conversion. Note that this is a non-standard feature!
- Integrated Peter Bengtsson's termios code. Thank you very much! I chose
to add it to libunix.a rather than keeping it in a separate libtermios.a
library.
c.lib 1.192 (12.5.2005)
- Changed how errors are detected, as returned by Write(), Read() and
Seek(). Seek() is particularly challenging because the value it
returns might be a valid file position and not an error.
- Replaced numeric function return codes of 0 and -1 with macros OK,
SEEK_ERROR/ERROR to clarify the respective purposes.
- Changed how ftell() and fseek() are used, double-checking the return
value and the errno code.
- The record locking semaphore could wind up getting added to the public
list twice. Fixed.
- Fixed two linker errors which were caused by duplicate symbol definitions.
- Added code to the startup routine which allows you to monitor where a command
was started from and which parameters it was invoked with.
- If fread()/fwrite() fail to read/write any data because either the number
of records or the size of each record is zero, both now call clearerr() to
avoid giving the caller the wrong impression that an EOF or error occured.
- The libunix.a flavour of system() no longer attempts to translate the name
of a command unless it contains path separator characters.
- Added strtof(), llabs(), lldiv(), vsscanf() and vscanf() for C99.
- strftime() now supports %C, %n, %r, %R, %t, %T, %u, %V, and %z for C99.
And it ignores the E and O modifiers.
- The printf() family now supports the %hh, %j, %t and %z modifiers and the
%a/%A conversions for C99. The %j is treated like %ll; %t and %z are treated
like %l. Also, the "infinity"/"not a number" signals now come out as the
strings "inf" and "nan".
- Added HUGE_VALF to <math.h>.
- For the printf() "%a" conversion the exponent now comes out as a binary
number rather than a decimal one. Now how odd is that?
- strtod() and strtof() now support "inf"/"infinity"/"nan"/"nan(..)" and
hexadecimal floating point numbers, for C99.
- Added the fpclassify(), isfinite(), isnormal() and signbit() macros for C99.
- Reimplemented isnan() and isinf() as macros for C99. The corresponding
functions will be dropped from the library. Note that the isinf() macro
does not return -1, 0 or 1 like the old function did, but only 0 or 1
depending upon whether the parameter represents +/- infinity or not.
- Added fabsf() for C99.
- The scanf() family now supports the %hh, %j, %t and %z modifiers and the
%a/%A conversions for C99. The %j is treated like %ll; %t and %z are treated
like %l. Also, the "inf"/"infinity"/"nan"/"nan()" keywords are processed.
- The strftime() %z conversion now prints the time zone difference as a
"decimal" number. That is, if the difference is 5 hours and 30 minutes,
then %z will now print "530" rather than "330".
- mktime() now handles one leap second gracefully.
- Added isblank().
- Added isunordered(), isgreater(), isgreaterequal(), isless(),
islessequal() and islessgreater() to <math.h> for C99.
- The wchar_t type is now an 'unsigned short' integer (16 bits wide).
- Added PTRDIFF_MIN/PTRDIFF_MAX, WCHAR_MIN/WCHAR_MAX and
WINT_MIN/WINT_MAX to <stdint.h> for C99.
- Added imaxdiv() and imaxabs() for C99.
- Added strtoimax() and strtoumax() for C99.
- Added nextafter() and nextafterf() for C99.
- Added copysign() and copysignf() for C99.
- Unless I missed something, clib2 should now be functionally complete
with regard to C99, except for the floating point operations covered.
These are a major challenge all by themselves, and I wonder both
whether they are worth the effort and how one could implement them
correctly.
- fflush() now consistently supports a NULL parameter, causing all
streams to be flushed for which this behaviour is defined.
- The printf() family can now produce output for floating point
numbers with more than about 77 characters, provided sufficient
memory is available. C99 calls for a minimum of 4095 characters,
but we're trying to allocate the space required dynamically.
c.lib 1.191 (9.4.2005)
- The name of the public record locking semaphore has to be preallocated
for OS4 if the AllocSysObject() function is used to create it.
- Moved the signal block mask and the signal function table out of
signal_data.c and into signal_raise.c where they are actually used.
This makes it possible to override the default definition of the
__check_abort_enabled variable in your own programs.
- raise() no longer resets the signal handler before it invokes the one
currently configured. It merely blocks the delivery of the respective
signal to prevent recursion.
- raise() now drops into abort() if a signal handler is set to
SIG_DFL. The exception is in SIGINT delivery, which has the
effect of printing a different termination message but otherwise
program flow takes the same path as abort().
- Moved the __UtilityBase/__IUtility variable declarations into
a separate file.
- Simplified the library/open close code in "stdlib_main.c".
- File descriptors produced by dup() or dup2() now work exactly like
the original file descriptors they are duplicates of. I modified the
function which maps file descriptor numbers to file descriptor
table entries to return the table entries of the original files.
- In the thread-safe library, duplicated stdin/stdout/stderr
descriptors now work like the "real" ones. This is true even if
the "real" ones were closed and only their former aliases remain.
- Invoking fstat() on what maps to a con-handler stream now produces
information identifying it as a character special file.
- Added more code and changes contributed by Peter Bengtsson, thank you
very much! This includes the following:
- Added SSIZE_MAX to <limits.h>.
- Added <sys/uio.h>, readv() and writev().
- Cut back the soft link resolution code in lstat().
- In <fcntl.h> O_NDELAY is now an alias for O_NONBLOCK.
- Added <complex.h>, carg(), cargf(), cargl(), cimag(), cimagf(),
cimagl(), conj(), conjf(), conjl(), creal(), crealf() and creall().
Note that the C99 support for the complex floating point data
types is limited to GCC 3.x for now.
- Added va_copy() to <stdarg.h>.
- Added _Exit() to <stdlib.h>.
- Added <stdbool.h>.
- Added vfscanf() to <stdio.h>.
- The stdio locking in fcntl() wasn't working correctly. Fixed.
- Made the clearerr(), feof() and ferror() macros thread-safe.
c.lib 1.190 (25.3.2005)
- DoTimer() now calls AllocSysObject() rather than making up
a MsgPort locally.
- The record locking semaphore code now builds a semaphore to add
before it tries to find the public one in memory. That way, the
code can spend less time in Forbid() state and, heaven forbid,
refrain from allocating memory while in that state.
- Split the general stdio initialization/cleanup code from the
initialization of the stdin/stdout/stderr streams.
- Moved the Workbench console stream initialization into the
initialization code for the stdin/stdout/stderr streams and
out of the program parameter setup.
- The current program name is now set up in the stdlib
initialization function.
- Simplified the machine test code; moved the FPU check into
the math initialization code.
- Added more safety checks to verify that file descriptor
file handles are valid.
- Made the file descriptor checks in the fsync() and fdatasync()
functions more robust.
- Cleaned up the 68k build makefile, so that the CPU and FPU
tests and the error message display can run safely even
on plain 68000 machines. This won't work for the 32 bit small
data model, which implies 68020 code, but so there...
- Moved the CPU/FPU type tests into the respective linker
libraries.
- Moved the data declarations out of math_data.c, stat_data.c,
socket_data.c, dirent_data.c and stdio_data.c and into the
code that initializes them.
- Moved a few __delete_semaphore() calls into conditional compilation
sections where they should have been in the first place.
- Thanks to Jörg Strohmayer, the GCC library build now manages to
invoke the library's constructor/destructor functions in a
very particular order. That way, you can use constructor/destructor
functions in your own code and not have them clash with the library's
own functions.
- Reimplemented the constructor/destructor invocation code for GCC.
Both the 68k and PowerPC platform now invoke them in the same order
and the 68k code uses the designated invocation priorities. The
PowerPC destructor function now sets up the exit() jmp_buf before
the destructor functions are called.
- Added S_IREAD, S_IWRITE and S_IEXEC aliases to <sys/stat.h>.
- Moved data out of stdlib_data.c and into the code that references
or initializes it.
- The stdlib constructor now performs the CPU/FPU compatibility test.
- Introduced new constructor types and changed the overall priority
order.
- Switched over the startup code and the library itself to use
constructor/destructor functions for initialization and cleanup
purposes.
- The destructor function invocation code no longer calls
setjmp(). This is now done within stdlib_main.c prior to
calling the destructor function invocation code.
- Fixed the SAS/C destructor function prototypes and verified
that the constructors/destructors are called in the proper
order, too.
- Aliases of file descriptors are now using the signal semaphore
of the original file descriptor.
- close() did not return 0 if the file descriptor in question
was really just an alias. Fixed.
- Added a feature which makes it possible to have several clients
use the standard I/O streams (stdin/stdout/stderr) and have these
referring to their process' Input()/Output()/ErrorOutput()
streams. This is intended to support the upcoming shared
library feature.
- Turns out that the 68k GCC port does not sort constructor and
destructor functions in any way at all. I reimplemented the
entire library constructor/destructor functionality to use the
same approach as libnix.
- ftruncate() ended up changing the current file position, contrary
to what it is supposed to do. Fixed.
- fcntl() did not work for sockets. Fixed.
- Reorganized the local header files, removing redundancies.
- Dropped unused stub code which is now redundant because of
the constructor/destructor mechanism.
- Moved the call chain printing out of stdlib_main.c and into
separate files.
- Removed some more redundant data from stdlib_main.c.
- Added the first "real" C99 function: _Exit() ;-)
- assertion failures early on during program initialization
should no longer spell big trouble on account of the stdio
data structures possibly not being in a well-defined and
initialized state.
- Turns out that the constructor/destructor calling sequence
was still wrongish for the OS4 library. So I had to change
it *again*. Which probably means that the 68k library will
need further changes...
- Moved stdlib_main.o into the regular libc.a, at least for
the 68k build. The PowerPC build may follow later, provided
I manage to get the specs file fixed. Actually, stdlib_main.o
is in the libc.a library already. Now about that specs file...
- Moved the check for the presence of an FPU into the
math_init.c code. I am far from certain whether this will
have the desired effect, though. Due to how the GNU ld linker
works, libraries are scanned once only. And the FPU check will
be pulled in only if something references the HUGE_VAL
constant.
- Activated the dormant thread-safe standard input/output/error
handling code.
- Small fixes to fcntl() and select() to cover the thread-safe
fd->fd_DefaultFile == ZERO case.
c.lib 1.189 (5.3.2005)
- Rewrote the __translate_unix_to_amiga_path_name() function to
translate patterns such as "foo/bar/../../baz" properly, and to
use strlen() a lot less.
- Major, major changes! Moved most of the monolithic code out of
the file descriptor hook and into the respective functions,
such as dup2(), fchmod(), fchown(), fcntl(), fdatasync(), fstatfs(),
fsync(), ftruncate() and lseek(). Code which is not strictly
required will no longer find its way into your programs if you
link with the updated library.
NOTE: these changes require that the entire library is rebuilt!
- The buffered and unbuffered file hook code is now invoked through
function pointers alone. The utility.library/CallHookPkt mechanism
is no longer required.
- Moved the entire lseek() code relevant for files into the hook
function.
- Simplified the close() function which now just calls into the
hook code to perform whatever is necessary. The hook code is
responsible for cleaning up after aliases, etc. This change in
turn made it possible to greatly simplify the hook code for
buffered files which now bypasses close/read/write/lseek and
directly invokes the hook code for unbuffered files.
- Added various floating point constants to <math.h>, courtesy
of Henning Nielsen Lund. Thank you very much!
- When using the wildcard expansion code for command line
parameters (which is by default linked in with libunix.a),
regular expressions can no longer prompt dos.library requesters
to appear. However, to be on the safe side, if you are expecting
to pass regular expressions on the command line, do not use
the wildcard expansion code such as by overriding the library
symbols with dummy functions such as are used in the file
"stdlib_wildcard_expand.c".
- Added a new variable '__open_locale' which can be used to
restrict all library functions to use the "C" language locale
rather than the current system locale settings. In addition
to that, two new functions __locale_exit() and __locale_init()
can be used to close and (re-)open the system locale at a
later time.
- Local ("static") functions are now identified by the STATIC
qualifier. This was done in preparation for changes that will
deal with global and local data and the issue of thread safety.
- Added stdio thread locking functions flockfile(), funlockfile(),
and ftrylockfile().
- Modified the internal FILE structure to allow for thread locking.
Note that this again requires that the library is rebuilt!
- Added or modified macros for getc_unlocked(), getchar_unlocked(),
putc_unlocked() and putchar_unlocked().
- Added rand_r().
- Added flockfile()/funlockfile() wrappers around all stdio
functions.
- Added more semaphore locking around the basic stdio, memory, locale
and dirent data operations. That should do it! While the library is
not reentrant (this is not ixemul.library) it should be thread-safe
now. Thread-safe in the sense of POSIX 1003.1c-1995.
- The thread-safety code is now subject to conditional compilation.
Both the library and the user code need to be rebuilt with the
preprocessor symbol __THREAD_SAFE defined to get thread-safe
code.
- Extended the thread-safety locking to the file descriptors.
NOTE: these changes require that the entire library is rebuilt!
- The translation of Unix to Amiga path names now silently accepts
absolute Amiga path names passed to it and will use them without
changing them.
- Added atoll(), ffs(), ftw(), nftw(), lstat() and uname() code
contributed by Peter Bengtsson. Thank you very much!
- Reworked the code that handles quoting for the wildcard expansion
routine. We no longer allocate memory and then modify it, but
call a function for each quoted parameter which does whatever is
necessary.
- The shell command parameter parser now considers the non-breaking
space character (ISO code 160) to be a blank space character, too.
- Moved the signal semaphore allocation/initialization/deallocation
into a dedicated module. This also has the advantage that it's
harder to break code by accidentally forgetting to call
InitSemaphore() after having allocated the memory for it.
- Rewrote the code that allocates the file descriptor and file
buffer tables so that all the memory allocations are in one
place and it's possible to specify exactly how many table
entries are required at a time.
- Creation and initialization of semaphores now uses the AmigaOS4
specific functions for this purpose, if available.
- In the thread-safe variant, the library now tries to allow
multiple concurrent callers to use the socket functions. Note
that this works only with the Roadshow TCP/IP stack, and the
results with other TCP/IP stacks are rather unpredictable.
c.lib 1.188 (7.2.2005)
- Folded duplicate code in "stdio_init_exit.c" into a common function.
- Simplified the code in "time_asctime_r.c" which builds the time
string. It gracefully handles buffer sizes which are too short
by returning an empty string.
- Moved the "tm->tm_wday" initialization out of the hook function
in "time_strftime.c" since it was to be called only once anyway.
- Lost a few compiler warnings in "unistd_time_delay.c" and
"time_gettimeofday.c".
- Folded duplicate code in "time_mktime.c"; also, errno is no longer
modified unless the library is built with the "CHECK_FOR_NULL_POINTERS"
option.
- We now allocate the AnchorPath used in the unistd_wildcard_expand.c
code. Also, the contents of the AnchorPath structure are no longer
modified between calls. MatchEnd() has to be sufficient.
- Moved redundant code out of the readdir()/opendir()/closedir()
functions which is not required unless the code is built for
Unix compatibility mode.
- Lost the __not_a_number and __infinity variables, including the
code which initialized them.
- Reading/changing the errno variable is no longer done directly, but
involves accessor functions.
- References to the HUGE_VAL quantity now involve an accessor function, too.
- Changed the manner in which the __huge_val constant is initialized by
the __math_init() function. The new approach should be more portable.
- The library no longer sends ACTION_DISK_INFO packets to the console
handler. The side-effects were too varied and irritating after all.
- Added the fsync() and fdatasync() functions and the <stdint.h> and
<inttypes.h> header files contributed by Peter Bengtsson. Thank
you very much!
- Tweaked the build makefiles to produce fewer meaningless warnings.
c.lib 1.187 (29.1.2005) c.lib 1.187 (29.1.2005)
- The default console output window opened when a program is launched - The default console output window opened when a program is launched

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_carg.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
double
carg(double complex z)
{
return(atan2(IMAG(z),REAL(z)));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_cargf.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
float
cargf(float complex z)
{
return(atan2(IMAG(z),REAL(z))); /* ZZZ this really needs to call ata2f(). */
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_cargl.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
long double
cargl(long double complex z)
{
return(atan2(IMAG(z),REAL(z))); /* ZZZ this really needs to call atan2l(). */
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_cimag.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
double
cimag(double complex z)
{
return(IMAG(z));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_cimagf.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
float
cimagf(float complex z)
{
return(IMAG(z));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_conj.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
double complex
conj(double complex z)
{
return(CONJ(z));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_conjf.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
float complex
conjf(float complex z)
{
return(CONJ(z));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_conjl.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
long double complex
conjl(long double complex z)
{
return(CONJ(z));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_creal.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
double
creal(double complex z)
{
return(REAL(z));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_crealf.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
float
crealf(float complex z)
{
return(REAL(z));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,52 +0,0 @@
/*
* $Id: complex_creall.c,v 1.2 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#include "complex_headers.h"
#endif /* _COMPLEX_HEADERS_H */
/****************************************************************************/
#if defined(COMPLEX_SUPPORT)
/****************************************************************************/
long double
creall(long double complex z)
{
return(REAL(z));
}
/****************************************************************************/
#endif /* COMPLEX_SUPPORT */

View File

@@ -1,68 +0,0 @@
/*
* $Id: complex_headers.h,v 1.4 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _COMPLEX_HEADERS_H
#define _COMPLEX_HEADERS_H
/****************************************************************************/
#ifndef _MATH_FP_SUPPORT_H
#include "math_fp_support.h"
#endif /* _MATH_FP_SUPPORT_H */
/****************************************************************************/
#if defined(FLOATING_POINT_SUPPORT) && defined(__GNUC__) && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
/****************************************************************************/
#include <complex.h>
#include <math.h>
/****************************************************************************/
#define COMPLEX_SUPPORT
/****************************************************************************/
#define REAL(z) (__real__ (z))
#define IMAG(z) (__imag__ (z))
#define CONJ(z) (~(z))
/****************************************************************************/
#endif /* FLOATING_POINT_SUPPORT && __GNUC__ && __STDC_VERSION__ */
/****************************************************************************/
#endif /* _COMPLEX_HEADERS_H */

View File

@@ -1,12 +1,11 @@
// //
// $Id: crt0.S,v 1.6 2005-10-11 09:28:29 obarthel Exp $ // $Id: crt0.S,v 1.2 2004-11-28 12:31:27 tfrieden Exp $
// //
// :ts=4 // :ts=4
// //
.text .text
.globl main /* This enforces linkage against the main() function */
.globl _main .globl _main
.globl _start .globl _start
@@ -26,3 +25,16 @@ _start:
#endif #endif
b _main b _main
#if defined(BASEREL_DATA)
.section .rodata
.globl __data_segment_descriptor
__data_segment_descriptor:
.long __data_start
.long __data_end
.long _DATA_BASE_
.section .dend, "wa", @nobits
.space 4
#endif

View File

@@ -1,18 +1,21 @@
/* /*
* $Id: crtbegin.c,v 1.11 2006-09-22 09:02:51 obarthel Exp $ * $Id: crtbegin.c,v 1.3 2004-09-29 16:54:54 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Handles global constructors and destructors for the OS4 GCC build. * Handles global constructors and destructors.
*/ */
#if defined(__amigaos4__) #include <exec/types.h>
/****************************************************************************/ /****************************************************************************/
#ifndef EXEC_TYPES_H #include <stdlib.h>
#include <exec/types.h> #include <setjmp.h>
#endif /* EXEC_TYPES_H */
/****************************************************************************/
#if defined(__amigaos4__)
/****************************************************************************/ /****************************************************************************/
@@ -22,27 +25,108 @@
* with a NULL pointer entry and is put at the end of the sections. This way, the init * with a NULL pointer entry and is put at the end of the sections. This way, the init
* code can find the global constructor/destructor pointers * code can find the global constructor/destructor pointers
*/ */
static void (*__CTOR_LIST__[1]) (void) __attribute__(( used, section(".ctors"), aligned(sizeof(void (*)(void))) )); static void (*__CTOR_LIST__[1]) (void) __attribute__((section(".ctors"))) = { (void *)-1 };
static void (*__DTOR_LIST__[1]) (void) __attribute__(( used, section(".dtors"), aligned(sizeof(void (*)(void))) )); static void (*__DTOR_LIST__[1]) (void) __attribute__((section(".dtors"))) = { (void *)-1 };
/****************************************************************************/ /****************************************************************************/
void _init(void); static void
void _fini(void); _do_ctors(void)
{
void (**pFuncPtr)(void);
/* Skip the first entry in the list (it's -1 anyway) */
pFuncPtr = __CTOR_LIST__ + 1;
/* Call all constructors in forward order */
while (*pFuncPtr != NULL)
(**pFuncPtr++)();
}
/****************************************************************************/
static void
_do_dtors(void)
{
ULONG i = (ULONG)__DTOR_LIST__[0];
void (**pFuncPtr)(void);
if (i == ~0UL)
{
/* Find the end of the destructors list */
i = 1;
while (__DTOR_LIST__[i] != NULL)
i++;
/* We're at the NULL entry now. Go back by one */
i--;
}
/* Call all destructors in reverse order */
pFuncPtr = __DTOR_LIST__ + i;
while (i-- > 0)
(**pFuncPtr--)();
}
/****************************************************************************/
#else
/****************************************************************************/
typedef void (*func_ptr)(void);
/****************************************************************************/
static void
_do_ctors(void)
{
extern func_ptr __CTOR_LIST__[];
ULONG nptrs = (ULONG)__CTOR_LIST__[0];
ULONG i;
for(i = nptrs ; i > 0 ; i--)
__CTOR_LIST__[i]();
}
/****************************************************************************/
static void
_do_dtors(void)
{
extern func_ptr __DTOR_LIST__[];
extern jmp_buf __exit_jmp_buf;
ULONG nptrs = (ULONG)__DTOR_LIST__[0];
static ULONG i;
/* If one of the destructors drops into
* exit(), processing will continue with
* the next following destructor.
*/
(void)setjmp(__exit_jmp_buf);
while(i++ < nptrs)
__DTOR_LIST__[i]();
}
/****************************************************************************/
#endif /*__amigaos4__ */
/****************************************************************************/
/* FIXME: Do we need to put these in .init/.fini sections? */
//void _init(void) __attribute__((section(".init")));
//void _fini(void) __attribute__((section(".fini")));
/****************************************************************************/ /****************************************************************************/
void void
_init(void) _init(void)
{ {
int num_ctors,i; _do_ctors();
int j;
for(i = 1, num_ctors = 0 ; __CTOR_LIST__[i] != NULL ; i++)
num_ctors++;
for(j = 0 ; j < num_ctors ; j++)
__CTOR_LIST__[num_ctors - j]();
} }
/****************************************************************************/ /****************************************************************************/
@@ -50,16 +134,5 @@ _init(void)
void void
_fini(void) _fini(void)
{ {
int num_dtors,i; _do_dtors();
static int j;
for(i = 1, num_dtors = 0 ; __DTOR_LIST__[i] != NULL ; i++)
num_dtors++;
while(j++ < num_dtors)
__DTOR_LIST__[j]();
} }
/****************************************************************************/
#endif /*__amigaos4__ */

View File

@@ -1,5 +1,5 @@
/* /*
* $Id: crtend.c,v 1.2 2005-03-09 21:07:25 obarthel Exp $ * $Id: crtend.c,v 1.1.1.1 2004-07-26 16:30:22 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
@@ -10,10 +10,9 @@
/****************************************************************************/ /****************************************************************************/
static void (*__CTOR_LIST__[1]) (void) __attribute__((used, section(".ctors"), aligned(sizeof(void (*)(void))) )); static volatile void (*__CTOR_LIST__[1]) (void) __attribute__((used,section(".ctors"))) = { (void *)0 };
static void (*__DTOR_LIST__[1]) (void) __attribute__((used, section(".dtors"), aligned(sizeof(void (*)(void))) )); static volatile void (*__DTOR_LIST__[1]) (void) __attribute__((used,section(".dtors"))) = { (void *)0 };
/****************************************************************************/ /****************************************************************************/
#endif /*__amigaos4__ */ #endif /*__amigaos4__ */

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_headers.h,v 1.6 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_headers.h,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -42,25 +42,18 @@
/****************************************************************************/ /****************************************************************************/
#ifndef _STDLIB_LOCALEBASE_H #ifndef _STDLIB_LOCALE_UTILITY_H
#include "stdlib_localebase.h" #include "stdlib_locale_utility.h"
#endif /* _STDLIB_LOCALEBASE_H */ #endif /* _STDLIB_LOCALE_UTILITY_H */
#ifndef _STDLIB_UTILITYBASE_H
#include "stdlib_utilitybase.h"
#endif /* _STDLIB_UTILITYBASE_H */
/****************************************************************************/ /****************************************************************************/
#ifndef _MACROS_H
#include "macros.h" #include "macros.h"
#endif /* _MACROS_H */
/****************************************************************************/ /****************************************************************************/
#include <locale.h> #include <locale.h>
#include <assert.h> #include <assert.h>
#include <limits.h>
#include <ctype.h> #include <ctype.h>
/****************************************************************************/ /****************************************************************************/

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isalnum.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isalnum.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -49,26 +49,16 @@ isalnum(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsAlNum(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsAlNum(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
result = isalpha(c) || isdigit(c); result = isalpha(c) || isdigit(c);
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isalpha.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isalpha.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,19 +47,11 @@ isalpha(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsAlpha(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsAlpha(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
@@ -67,7 +59,5 @@ isalpha(int c)
('A' <= c && c <= 'Z')); ('A' <= c && c <= 'Z'));
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isascii.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isascii.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,52 +0,0 @@
/*
* $Id: ctype_isblank.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $
*
* :ts=4
*
* Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Neither the name of Olaf Barthel nor the names of contributors
* may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _CTYPE_HEADERS_H
#include "ctype_headers.h"
#endif /* _CTYPE_HEADERS_H */
/****************************************************************************/
#undef isblank
/****************************************************************************/
int
isblank(int c)
{
int result;
result = (c == '\t' || c == ' ');
return(result);
}

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_iscntrl.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_iscntrl.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,26 +47,16 @@ iscntrl(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsCntrl(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsCntrl(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
result = (('\0' <= c && c < ' ') || (c == 127)); result = (('\0' <= c && c < ' ') || (c == 127));
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isdigit.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isdigit.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,26 +47,16 @@ isdigit(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsDigit(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsDigit(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
result = ('0' <= c && c <= '9'); result = ('0' <= c && c <= '9');
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isgraph.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isgraph.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,26 +47,16 @@ isgraph(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsGraph(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsGraph(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
result = (' ' < c && c < 127); result = (' ' < c && c < 127);
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_islower.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_islower.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,26 +47,16 @@ islower(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsLower(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsLower(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
result = ('a' <= c && c <= 'z'); result = ('a' <= c && c <= 'z');
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isprint.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isprint.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,26 +47,16 @@ isprint(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsPrint(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsPrint(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
result = (' ' <= c && c <= '~'); result = (' ' <= c && c <= '~');
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_ispunct.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_ispunct.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,19 +47,11 @@ ispunct(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsPunct(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsPunct(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
@@ -69,7 +61,5 @@ ispunct(int c)
('{' <= c && c <= '~')); ('{' <= c && c <= '~'));
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isspace.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isspace.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,19 +47,11 @@ isspace(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsSpace(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsSpace(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
@@ -71,7 +63,5 @@ isspace(int c)
c == ' '); c == ' ');
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isupper.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isupper.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,26 +47,16 @@ isupper(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsUpper(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsUpper(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
result = ('A' <= c && c <= 'Z'); result = ('A' <= c && c <= 'Z');
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_isxdigit.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_isxdigit.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -47,19 +47,11 @@ isxdigit(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = IsXDigit(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = IsXDigit(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = FALSE;
} }
else else
{ {
@@ -68,7 +60,5 @@ isxdigit(int c)
('A' <= c && c <= 'F')); ('A' <= c && c <= 'F'));
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_table.c,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_table.c,v 1.3 2005-01-09 15:20:31 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_tolower.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_tolower.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -43,26 +43,16 @@ tolower(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = ConvToLower(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = ConvToLower(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = c;
} }
else else
{ {
result = ('A' <= c && c <= 'Z') ? (c + ('a' - 'A')) : c; result = ('A' <= c && c <= 'Z') ? (c + ('a' - 'A')) : c;
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: ctype_toupper.c,v 1.5 2006-01-08 12:04:22 obarthel Exp $ * $Id: ctype_toupper.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -43,26 +43,16 @@ toupper(int c)
DECLARE_LOCALEBASE(); DECLARE_LOCALEBASE();
int result; int result;
__locale_lock();
if(__locale_table[LC_CTYPE] != NULL) if(__locale_table[LC_CTYPE] != NULL)
{ {
assert( LocaleBase != NULL ); assert( LocaleBase != NULL );
/* The parameter must be either EOF or in the range of an result = ConvToUpper(__locale_table[LC_CTYPE],(ULONG)c);
'unsigned char'. If it's not, then the behaviour is
undefined. */
if(c != EOF && ((0 <= c && c <= UCHAR_MAX) || ((c + 256) <= UCHAR_MAX)))
result = ConvToUpper(__locale_table[LC_CTYPE],(ULONG)(c & 255));
else
result = c;
} }
else else
{ {
result = ('a' <= c && c <= 'z') ? (c - ('a' - 'A')) : c; result = ('a' <= c && c <= 'z') ? (c - ('a' - 'A')) : c;
} }
__locale_unlock();
return(result); return(result);
} }

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug.c,v 1.5 2006-09-22 09:02:51 obarthel Exp $ * $Id: debug.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=8 * :ts=8
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -133,7 +133,7 @@ _POPDEBUGLEVEL(void)
/****************************************************************************/ /****************************************************************************/
STATIC VOID static void
_INDENT(void) _INDENT(void)
{ {
if(program_name_len > 0) if(program_name_len > 0)
@@ -160,7 +160,7 @@ _SHOWVALUE(
{ {
if(__debug_level >= DEBUGLEVEL_Reports) if(__debug_level >= DEBUGLEVEL_Reports)
{ {
const char *fmt; char *fmt;
switch(size) switch(size)
{ {
@@ -207,7 +207,7 @@ _SHOWPOINTER(
{ {
if(__debug_level >= DEBUGLEVEL_Reports) if(__debug_level >= DEBUGLEVEL_Reports)
{ {
const char *fmt; char *fmt;
_INDENT(); _INDENT();

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug.h,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug.h,v 1.3 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=8 * :ts=8
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug.lib_rev.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug.lib_rev.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,6 +1,6 @@
#define VERSION 1 #define VERSION 1
#define REVISION 201 #define REVISION 187
#define DATE "21.9.2006" #define DATE "29.1.2005"
#define VERS "debug.lib 1.201" #define VERS "debug.lib 1.187"
#define VSTRING "debug.lib 1.201 (21.9.2006)\r\n" #define VSTRING "debug.lib 1.187 (29.1.2005)\r\n"
#define VERSTAG "\0$VER: debug.lib 1.201 (21.9.2006)" #define VERSTAG "\0$VER: debug.lib 1.187 (29.1.2005)"

View File

@@ -1 +1 @@
201 187

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_cmpstrexec.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_cmpstrexec.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_headers.h,v 1.4 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_headers.h,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@@ -36,15 +36,14 @@
/****************************************************************************/ /****************************************************************************/
#ifndef EXEC_LIBRARIES_H
#include <exec/libraries.h> #include <exec/libraries.h>
#endif /* EXEC_LIBRARIES_H */
/****************************************************************************/ /****************************************************************************/
#if defined(__SASC) #if defined(__SASC)
#include <clib/exec_protos.h> #include <clib/exec_protos.h>
/*#include <pragmas/exec_sysbase_pragmas.h>*/
#include <pragmas/exec_pragmas.h> #include <pragmas/exec_pragmas.h>
LONG RawMayGetChar(VOID); LONG RawMayGetChar(VOID);
@@ -58,11 +57,7 @@ VOID RawPutChar(UBYTE c);
/****************************************************************************/ /****************************************************************************/
#if defined(__amigaos4__) #if defined(__amigaos4__)
#ifndef EXEC_EMULATION_H
#include <exec/emulation.h> #include <exec/emulation.h>
#endif /* EXEC_EMULATION_H */
#endif /* __amigaos4__ */ #endif /* __amigaos4__ */
/****************************************************************************/ /****************************************************************************/
@@ -111,13 +106,11 @@ VOID RawPutChar(UBYTE c);
/****************************************************************************/ /****************************************************************************/
#ifndef _MACROS_H
#include "macros.h"
#endif /* _MACROS_H */
#ifndef _DEBUG_H
#include "debug.h" #include "debug.h"
#endif /* _DEBUG_H */
/****************************************************************************/
#include "macros.h"
/****************************************************************************/ /****************************************************************************/

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kcmpstr.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kcmpstr.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kdofmt.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kdofmt.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kgetc.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kgetc.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kgetch1.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kgetch1.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kgetch2.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kgetch2.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kgetchar1.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kgetchar1.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kgetchar2.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kgetchar2.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kgetnum1.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kgetnum1.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kgetnum2.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kgetnum2.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kmaygetch.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kmaygetch.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kmaygetchar.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kmaygetchar.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kprintf1.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kprintf1.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kprintf2.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kprintf2.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

View File

@@ -1,10 +1,10 @@
/* /*
* $Id: debug_kputc.c,v 1.3 2006-01-08 12:04:22 obarthel Exp $ * $Id: debug_kputc.c,v 1.2 2005-01-02 09:07:07 obarthel Exp $
* *
* :ts=4 * :ts=4
* *
* Portable ISO 'C' (1994) runtime library for the Amiga computer * Portable ISO 'C' (1994) runtime library for the Amiga computer
* Copyright (c) 2002-2006 by Olaf Barthel <olsen (at) sourcery.han.de> * Copyright (c) 2002-2005 by Olaf Barthel <olsen@sourcery.han.de>
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without

Some files were not shown because too many files have changed in this diff Show More