1
0
mirror of https://github.com/adtools/clib2.git synced 2025-12-08 06:48:52 +00:00
Commit Graph

567 Commits

Author SHA1 Message Date
fa4223c544 [tboeckel]: when compiling amiga_rexxvars.c for m68k/OS3 the GetRexxVarFromMsg()
and SetRexxVarFromMsg() will not be used and therefore not cause linkage errors
with our libamiga.a stubs anymore.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15180 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2008-03-11 07:37:31 +00:00
91ccaa5ba9 - Added "-msoft-float" to the non-FPU libm build rules, which ought to
resolve the issues with FPU code popping up in the mathieee#?.library
  software floating point code.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15179 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2008-03-10 16:31:56 +00:00
234a17cc07 - The printf() family now ignores argument specifications, as in "%2$d %1$d",
which are used for localization on some platforms. This is a non-standard
  feature and the way clib2 treats it for now is just intended to avoid
  trouble while performing the conversion.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15178 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2008-03-10 15:28:11 +00:00
a41212e575 - Temporarily deactivated the separate -msoft-float builds.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15177 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2008-03-10 14:59:54 +00:00
2591e249d7 - [jlangner]: changed the GNUmakefile.68k to also build soft-float variants of all
our libraries. In addition the specs file now also respects the -msoft-float
  option at link time and sets the default link directory accordingly.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15176 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2008-03-04 16:25:35 +00:00
5ea68e3265 - the log() and log10() functions always returned -inf() even if the arguments
was within the valid range for a log() function. Using DBL_EPSILON as the
  threshold was not correct as EPSILON is 2.2204460492503131E-16 whereas
  values like 1E-200 are still valid double values for a log().


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15175 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2007-11-08 11:23:53 +00:00
0f3791a9a4 c.lib 1.202 (16.1.2007)
- Added llrint() function contributed by Henning Nielsen Lund. Thank you
  very much!

- <unistd.h> now also include <stdio.h>, so that the SEEK_SET, etc. macros
  are defined for lseek() to use.

- Added a wrapper function which handles the thread-safe stdio stream
  resolution.

- In tcflush() a break signal can no longer cause the read flush loop
  to be quit with two semaphores still locked.

- In __obtain_daemon_message() the test to verify if the bsdsocket.library API
  would support the server API functionality checked the wrong feature. Fixed.

- Switched over the fd->fd_DefaultFile references to fd->fd_Socket where
  sockets are used rather than file handles.

- Added functions which modify the callback function and the userdata pointer
  stored in a low level unbuffered file/socket data structure. These function
  perform the proper locking and are thus safe to use in a thread-safe environment.

- The low level unbuffered file/socket now has a public equivalent, which
  is defined (along with the typedefs and flags) in <sys/clib2_io.h>. Functions
  for tinkering with it are still to come.

- The math kernel code no longer uses its own private scalbn() function.

- Added a function prototype for the _exit() function. Note that _exit() is
  not an ISO 'C' function.

- Corrected the getopt() function prototype, as prompted by Henning Nielsen Lund.

- The printf() family no longer adds a 0 or 0x prefix if the alternate
  conversion modifier is present for the %o and %x conversions and the
  value to be converted is 0 already. Put another way, printf("%#x %#o",0,0);
  now prints "0 0". This required another change so that %p always includes
  the 0x prefix even if the pointer involved is a NULL pointer.

- readlink() no longer sort-of-works for files and directories. It now only
  works for soft linked objects and returns an error for everything else.
  This is based upon a fix by Peter Bengtsson. Thank you very much!

- Moved the lstat() local Lock() function into its own separate file.

- uname() now returns correct and robust information for OS version
  numbers > 36. This integrates a fix by Peter Bengtsson. Thank you
  very much!

- Moved the crtbegin.o/crtend.o files out of the link libraries. Moving
  them in was intended to work as a fix for the shared library build, but
  now it seems that this has to be done at the link stage through the
  GCC specs file...

- Integrated a fix for __rem_pio2() which affects sin(), tan() and cos(),
  contributed by Steven Solie. Thank you very much!

- The internal 'struct fd' file descriptor table entry data structure
  now has a user data field entry.

- Rearranged the contents of the 'struct fd' file descriptor table entry
  data structure in preparation for making it public. Also added a version
  field so that user code can handle changes to it gracefully. The default
  file is no longer a BCPL pointer to a file handle by default, but
  both a BPTR and a socket identifier, wrapped into a union.

- Added experimental tilde expansion in Unix path names. This still needs
  some more work.

- __get_default_file() called __fd_unlock() without having called
  __fd_lock() first. Ouch.

- Removed an unnecessary pair of __fd_lock()..__fd_unlock() calls from
  ttyname_r().

- The libunix.a unlink() function is now reentrant, or at least thread-safe.

- You can now make unlink() stop after a failed deletion attempt which
  failed because the object to be deleted was reported as being "in use".
  The libunix.a variant defaults to report the deletion to have succeeded
  under these circumstances and later tries to delete the files marked
  for deletion. See <dos.h> for a brief documentation of how to change
  the behaviour.

- basename() and dirname() can no longer return NULL. They truncate the
  resulting path name instead. This is done so because some code that
  calls basename() or dirname() does not check if the function's return
  value is NULL.

- The SetOwner() fall-back code for Kickstart 2.04 was passing the wrong
  parameters to the file system. The first (dp_Arg1) should have been
  zero. Ouch.

- basename() is not supposed to modify the string it is passed and should
  return a pointer to a string which can be modified. Now it does. Same
  thing for dirname().

- asctime_r() now returns NULL if the buffer is too short to hold even a single
  byte of data.

- ttyname() now calls ttyname_r(). Also, the libunix.a version of ttyname_r()
  will produce "/CONSOLE" rather than "CONSOLE:".


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15173 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2007-01-16 08:52:30 +00:00
e5a2a2b451 - Added llrint() function contributed by Henning Nielsen Lund. Thank you
very much!

- <unistd.h> now also include <stdio.h>, so that the SEEK_SET, etc. macros
  are defined for lseek() to use.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15172 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2007-01-06 10:09:49 +00:00
ca1fc13792 - Removed the timeval/TimeVal change workaround and replaced it with something
cleaner.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15171 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-12-28 14:30:57 +00:00
3a0324e4ff - Added a wrapper function which handles the thread-safe stdio stream
resolution.

- In tcflush() a break signal can no longer cause the read flush loop
  to be quit with two semaphores still locked.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15170 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-16 14:39:23 +00:00
77279e3224 - In __obtain_daemon_message() the test to verify if the bsdsocket.library API
would support the server API functionality checked the wrong feature. Fixed.

- Switched over the fd->fd_DefaultFile references to fd->fd_Socket where
  sockets are used rather than file handles.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15169 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-16 10:41:15 +00:00
75b0a762ef - Replaced rows of blank spaces by tabs.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15168 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-16 10:09:20 +00:00
c635fb3ffe - Added a comment to clarify which version number is being used for the
'_fd' data structure definition.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15167 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-15 09:21:49 +00:00
70d1e4b7a3 - Added functions which modify the callback function and the userdata pointer
stored in a low level unbuffered file/socket data structure. These function
  perform the proper locking and are thus safe to use in a thread-safe environment.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15166 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-15 09:17:04 +00:00
e9659f46d6 - The low level unbuffered file/socket now has a public equivalent, which
is defined (along with the typedefs and flags) in <sys/clib2_io.h>. Functions
  for tinkering with it are still to come.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15165 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-15 08:51:07 +00:00
acc795df55 - The math kernel code no longer uses its own private scalbn() function.
- Added a function prototype for the _exit() function. Note that _exit() is
  not an ISO 'C' function.

- Corrected the getopt() function prototype, as prompted by Henning Nielsen Lund.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15164 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-13 09:51:53 +00:00
66303e9ba2 - Added a directory to hold contributed code which has not been integrated
with the library yet.

- The byteswap code was contributed by Peter Bengtsson. Thank you very much!


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15163 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-13 09:49:49 +00:00
7e1d5d6f6a - The printf() family no longer adds a 0 or 0x prefix if the alternate
conversion modifier is present for the %o and %x conversions and the
  value to be converted is 0 already. Put another way, printf("%#x %#o",0,0);
  now prints "0 0". This required another change so that %p always includes
  the 0x prefix even if the pointer involved is a NULL pointer.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15162 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-13 09:32:28 +00:00
e789564429 - readlink() no longer sort-of-works for files and directories. It now only
works for soft linked objects and returns an error for everything else.
  This is based upon a fix by Peter Bengtsson. Thank you very much!

- Moved the lstat() local Lock() function into its own separate file.

- uname() now returns correct and robust information for OS version
  numbers > 36. This integrates a fix by Peter Bengtsson. Thank you
  very much!

- Moved the crtbegin.o/crtend.o files out of the link libraries. Moving
  them in was intended to work as a fix for the shared library build, but
  now it seems that this has to be done at the link stage through the
  GCC specs file...

- Integrated a fix for __rem_pio2() which affects sin(), tan() and cos(),
  contributed by Steven Solie. Thank you very much!


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15161 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-11-13 09:25:28 +00:00
350ffdb790 - The internal 'struct fd' file descriptor table entry data structure
now has a user data field entry.

- Rearranged the contents of the 'struct fd' file descriptor table entry
  data structure in preparation for making it public. Also added a version
  field so that user code can handle changes to it gracefully. The default
  file is no longer a BCPL pointer to a file handle by default, but
  both a BPTR and a socket identifier, wrapped into a union.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15160 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-10-10 13:39:26 +00:00
6809a5dd5b - Added experimental tilde expansion in Unix path names. This still needs
some more work.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15159 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-10-03 16:36:47 +00:00
591ee2250e - Removed an unnecessary (STRPTR) cast.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15158 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-10-02 07:16:06 +00:00
2b9d624d1d - Added some documenting comments to the source code.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15157 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-10-02 07:15:37 +00:00
bf4d3b763c - __get_default_file() called __fd_unlock() without having called
__fd_lock() first. Ouch.

- Removed an unnecessary pair of __fd_lock()..__fd_unlock() calls from
  ttyname_r().


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15156 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-27 11:54:54 +00:00
9984a37cb4 - Unlink is now reentrant, or at least thread-safe.
- You can now make unlink() stop after a failed deletion attempt which
  failed because the object to be deleted was reported as being "in use".
  The libunix.a variant defaults to report the deletion to have succeeded
  under these circumstances and later tries to delete the files marked
  for deletion. See <dos.h> for a brief documentation of how to change
  the behaviour.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15155 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-27 09:40:06 +00:00
0b833b8680 - Added the base_dir_nametest test program.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15154 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 18:20:09 +00:00
b8ba11b158 - basename() and dirname() can no longer return NULL. They truncate the
resulting path name instead. This is done so because some code that
  calls basename() or dirname() does not check if the function's return
  value is NULL.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15153 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 18:19:44 +00:00
872b2b335b - Forgot to update chown() to use the same bug fix as fchown().
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15152 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 15:41:50 +00:00
b1f56b1bbe - The SetOwner() fall-back code for Kickstart 2.04 was passing the wrong
parameters to the file system. The first (dp_Arg1) should have been
  zero. Ouch.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15151 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 15:38:21 +00:00
9ce2ba234f - Got rid of some more compiler warnings by introducing function prototypes
which were missing and by casting pointers to the expected types.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15150 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 15:12:47 +00:00
d5bfee3917 - Corrected a couple more compiler warnings caused by mutable/constant
string pointer assignments.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15149 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 14:51:15 +00:00
9f37f76b01 - Replaced "char *" pointers with "const char *" pointers.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15148 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 14:12:15 +00:00
2f3de1dcd6 - ttyname() now calls ttyname_r(). Also, the libunix.a version of ttyname_r()
will produce "/CONSOLE" rather than "CONSOLE:".


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15147 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 14:05:31 +00:00
74b2838663 - asctime_r() now returns NULL if the buffer is too short to hold even a single
byte of data.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15146 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 13:43:06 +00:00
2c450a1e48 - basename() is not supposed to modify the string it is passed and should
return a pointer to a string which can be modified. Now it does. Same
  thing for dirname().


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15145 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-25 13:29:47 +00:00
828e36f2d7 - Fixed another compiler warning.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15143 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-22 09:19:07 +00:00
502d1aaab7 - Removed some more compiler warnings.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15142 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-22 09:02:51 +00:00
d6e18a9266 - 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.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15141 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-22 07:54:25 +00:00
3fe72eaa44 - Removed a couple more compiler warnings.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15140 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-21 09:24:20 +00:00
3541b011a6 - Preparations for release...
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15139 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-21 08:48:19 +00:00
7b903355a7 - fstat() now works with "NIL:" and "/dev/null", respectively. Not that
it returns much useful information, though.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15138 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-20 19:46:57 +00:00
36c33073a5 - Added the fstat() test program.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15137 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-20 19:46:37 +00:00
fba16b67fd - The _PC_MAX_INPUT query for file handles now returns the default
buffer size.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15136 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-17 17:53:15 +00:00
5c29f84a0d - Integrated the new OS4 build makefile collection, as contributed by
Steven Solie. Thank you very much!


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15135 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-17 17:37:27 +00:00
aa3240972a *** empty log message ***
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15134 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-17 17:36:42 +00:00
8aeb5072ab - fpathconf() should work with the stdio streams, even in the thread-safe
library version, again.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15133 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-17 16:36:48 +00:00
42dba39aef - Added a new callback function which can be used in programs which want
to avoid that the command line wildcard expansion takes place.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15132 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-15 06:58:17 +00:00
927407de1b - 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.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15131 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-15 06:50:47 +00:00
f3dcdfe1ce - __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.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15130 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-09-12 14:16:44 +00:00
ead90dee0d - execve() now finds commands in the current directory again, even if you
omit the leading "./" path name.


git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15129 87f5fb63-7c3d-0410-a384-fd976d0f7a62
2006-08-14 14:08:06 +00:00