Commit graph

1556 commits

Author SHA1 Message Date
David Given b9b808e01a Apply George Koehler's aelflod fix for generating non-EM_386 binaries.
Adjust platforms to use it. Fix some bugs in the linux386 platform.

--HG--
branch : dtrg-experimental-powerpc
2013-05-09 15:54:23 +01:00
David Given 99d7f513f2 Properly error out if something goes wrong rather than ploughing ahead
anyway.

--HG--
branch : dtrg-experimental-powerpc
2013-05-09 11:20:36 +01:00
David Given c93cb69959 Check in incomplete Linux PowerPC and M68K work.
--HG--
branch : dtrg-experimental-powerpc
2013-05-08 00:48:48 +01:00
George Koehler c8fdcff960 Some fixes for aelflod and aslod.
Copy rhead() and rsect() from aslod to aelflod, so aelflod can work
for machine with 64-bit long.

In aelflod, fix ELF header so file(1) no longer reports "corrupted
section header size".
2013-04-24 19:57:23 -04:00
George Koehler 0fc7fd5d33 Prevent segfault when trying to print an error message.
Use <stdarg.h> to pass arguments correctly, as ack/util/util.c
already uses <stdarg.h> the same way.
2012-10-24 13:44:50 -04:00
David Given 4349d702fa Change from using platform-specific types to stdint platform-independent types
when reading the structure header.
2012-09-27 11:32:40 +01:00
George Koehler 7ef9b79c11 Merge deletion of many undead files. 2012-09-23 15:31:16 -04:00
George Koehler e7c79415b5 Prevent division by zero in aslod.
rhead() and rsect() had assumed sizeof(long) == 4, but OpenBSD/amd64
has sizeof(long) == 8.  The problem revealed itself when sect->os_lign
became zero, and align() divided by zero.
2012-09-21 22:51:12 -04:00
George Koehler 0131ca4d46 Delete 689 undead files.
These files "magically reappeared" after the conversion from CVS to
Mercurial.  The old CVS repository deleted these files but did not
record *when* it deleted these files.  The conversion resurrected these
files because they have no history of deletion.  These files were
probably deleted before year 1995.  The CVS repository begins to record
deletions around 1995.

These files may still appear in older revisions of this Mercurial
repository, when they should already be deleted.  There is no way to fix
this, because the CVS repository provides no dates of deletion.

See http://sourceforge.net/mailarchive/message.php?msg_id=29823032
2012-09-20 22:26:32 -04:00
George Koehler 96ea0a5903 Fix more functions in util/ack for 64-bit hosts.
This continues the fix from changeset aabde0589450.  We must use
va_list to forward the arguments, because some of the arguments might
be 64-bit pointers.  A pointer does not fit in an int.
2012-09-07 16:28:10 -04:00
David Given 6ea172d0d9 Fix a 64-bitness issue (removed some untyped K&R C code that assumed ints
and pointers were the same size).
2012-02-27 22:36:36 +00:00
Ceriel Jacobs 1072a8797e Added atol() that ignores overflow, so that unsigned long constants are dealt with properly 2011-06-15 11:13:48 +02:00
Ceriel Jacobs 2483e5723d Fixed CFU 2011-06-15 10:56:58 +02:00
cjhjacobs 58613009f8 Fixed bug reported on tack-devel mailing list on 20-3-2011 2011-05-18 19:19:19 +02:00
David Given b6dfaefeff Removed file that the CVS conversion procedure left in (when it shouldn't have). 2011-03-20 20:47:10 +00:00
dtrg c326f3c6a3 Remove references to using-machine-name-for-compiler, as we don't do that any more. 2010-08-09 22:47:33 +00:00
dtrg 5a872eed38 Prevent build failure on modern Bisons (which are more picky than the old yacc this was written for). 2010-08-01 10:36:01 +00:00
dtrg ee72886e54 Renamed 'switch' variable to avoid conflict with a keyword in modern awks. 2010-08-01 10:35:04 +00:00
dtrg 2c54f8c742 Renamed getline() to getln() to avoid conflict with glibc's version. 2010-08-01 10:34:27 +00:00
dtrg 494d9a3e4a Now runs descr files through the ANSI C preprocessor, rather than the K&R one (which no longer exists). 2007-04-29 21:23:55 +00:00
dtrg 24ea8aee3d Updated for the 6.0pre2 release. 2007-04-24 20:45:58 +00:00
dtrg f6085fb234 Updated use of headers to compile cleanly. 2007-04-24 19:33:53 +00:00
dtrg ae9ac25f45 Modified to run ncgg input files through the ANSI preprocessor rather than the K&R one. 2007-04-23 23:40:59 +00:00
dtrg f471d2e618 Added the aelflod tool for generating ELF executables. Added documentation for aelflod and ashow. Now installs the documentation when built. 2007-04-23 23:40:10 +00:00
dtrg 6a0dd9377d Removed a dynamically generated file from the distribution. 2007-02-25 22:49:22 +00:00
dtrg 040151dd76 Removed some explicit (and wrong) redeclarations of system
functions.
2007-02-25 20:58:16 +00:00
dtrg b611731ec3 Updated .distr files for the new release. 2007-02-25 12:51:55 +00:00
dtrg 6d58210806 em_table is now in /h, not /etc. 2007-02-25 12:51:21 +00:00
dtrg 0f16e7540d new_table is now in /util/data, not /etc. 2007-02-25 12:49:04 +00:00
dtrg 903796a817 Now installs the man page. 2007-02-25 12:48:06 +00:00
dtrg 0974fa0e28 Remove non-standard .SB tags. 2007-02-25 12:47:50 +00:00
dtrg 26a9b76507 Added pregenerated versions of the LLgen source files (to ease
bootstrapping issues).
2007-02-24 02:01:57 +00:00
dtrg 478d0b1d8a Fixed a compilation error that was causing opt to not have its
peephole optimisation tables, which would make it generate
duff code.
2007-02-20 00:27:01 +00:00
dtrg 1c7bb87041 Fixed a bug in the maximum segment calculation. 2006-11-11 23:00:55 +00:00
dtrg 30b980bf7e Added a pmfile to allow LLgen to be built as part of the ACK again. 2006-11-11 22:58:30 +00:00
dtrg c0ecde554a Added support for anm, asize, ashow, astrip and the new aslod tool. 2006-10-16 23:25:56 +00:00
dtrg 47e1c27c05 Added new aslod tool for making memory dumps. 2006-10-16 23:25:27 +00:00
dtrg 12683dd8c6 Sanitised the use of #include files to more properly conform to the standards. 2006-10-16 23:20:11 +00:00
dtrg dbe10d2c19 Updated to the version 0.1 of Prime Mover (which involves some syntax changes). 2006-10-15 00:28:12 +00:00
dtrg 1e4ca91a8b Modified to install aal's manpage. 2006-07-30 23:45:35 +00:00
dtrg 45b4fef7d6 Rationalised use of #includes to be more standards-compliant. 2006-07-30 23:40:35 +00:00
dtrg 30e34f493f Rationalised use of #includes to be more standards-compliant. 2006-07-26 18:22:02 +00:00
dtrg 8558656665 Now avoids piping shell scripts into a new instance of sh, instead
using a subshell.
2006-07-26 12:29:47 +00:00
dtrg dc5d08b2a3 Modified to include the appropriate header file rather than (badly)
prototyping syscalls itself.
2006-07-26 12:28:56 +00:00
dtrg 3435e8d6ed Modified to not try to unlink directories when installing. 2006-07-25 23:29:12 +00:00
dtrg b3b2ec567f Updated version number. 2006-07-25 23:24:39 +00:00
dtrg 7068d0d301 Modified to use rename() instead of link()/unlink() to rename files. 2006-07-25 23:24:20 +00:00
dtrg f756747414 Updated to the latest version of pm which installs files with symlinks. 2006-07-25 23:22:58 +00:00
dtrg b24e1f5aae Updated to the latest version of pm. 2006-07-25 13:28:35 +00:00
dtrg 1799cb0706 Added a workaround for an OSX compiler bug. 2006-07-23 20:33:26 +00:00
dtrg f39d595f98 Updated to the latest version of pm. 2006-07-23 20:07:19 +00:00
dtrg 014be56fb0 Replaced calls to the custom strindex() and strrindex() functions with the
exactly equivalent and standard strchr() and strrchr() functions instead.
2006-07-23 20:01:02 +00:00
dtrg 05d3be79cd Removed a really unpleasant test for whether a pointer points at a string
constant or not by comparing it with 'end', which presumably points at
the top of the BSS. In fact, on Linux it evaluates to NULL, and on OSX it
doesn't exist at all, so it appears to be unnecessary.
2006-07-23 19:38:13 +00:00
dtrg 345f4c8978 Modified to avoid creating a zero-length iargs array, which some compilers
(OSX) do not create a symbol for.
2006-07-23 18:29:38 +00:00
dtrg eed5d461e4 cpp now gets installed in the right place. 2006-07-23 17:52:23 +00:00
dtrg 7af0c5696d cpp now gets installed in the right place. 2006-07-22 20:58:27 +00:00
dtrg 558a1ef405 led now gets installed into the right place. 2006-07-22 20:52:44 +00:00
dtrg 8499270aef Added support for the esize object inspection tool. 2006-07-22 20:10:41 +00:00
dtrg aa2dab31cf Rationalised use of #includes to be more standards-compliant. 2006-07-22 20:08:08 +00:00
dtrg 113383e31c Added support for the led link editor. 2006-07-22 20:04:41 +00:00
dtrg f232b4dc29 Rationalised use of #includes to be more standards-compliant. 2006-07-22 17:58:49 +00:00
dtrg 304c0e21a0 Added support for the top target peephole optimiser. 2006-07-22 12:31:19 +00:00
dtrg fdcdaadcb8 Rationalised use of #includes to be more standards-compliant. 2006-07-22 12:28:20 +00:00
dtrg 744d0ca7be Removed a huge, ancient comment dating from the genmake days. 2006-07-22 12:27:31 +00:00
dtrg 1a037b9685 Added support for the ego global optimisation suite. 2006-07-22 00:52:01 +00:00
dtrg f371b251d2 Rationalised use of #includes to be more standards-compliant. 2006-07-22 00:46:16 +00:00
dtrg d220081198 Changed to declare symbols as extern rather than just mentioning
them without qualification.
2006-07-22 00:45:51 +00:00
dtrg 86e20aa483 Added a concrete definition of nrglobals, because this was not always happening
otherwise.
2006-07-22 00:44:52 +00:00
dtrg 3afd3e4cb4 Updated version number. 2006-07-21 11:25:05 +00:00
dtrg c0c8695ea4 Now resolves symlinks when creating releases (which avoids including a symlink to pm in the distribution, and not pm itself). 2006-07-21 11:24:46 +00:00
dtrg 154b23cd39 Updated version number. Corrected some typos. 2006-07-21 11:19:42 +00:00
dtrg 34ae7c4634 Removed duplicate (and incorrect) system function declarations. 2006-07-21 11:17:18 +00:00
dtrg 70218cfeed Updated to the latest version of pm. 2006-07-21 11:15:14 +00:00
dtrg 685e85002e Rearranged the algorithm in get_text() to fix a memory overrun. 2006-07-21 09:28:36 +00:00
dtrg 097c640a6c First version in CVS. 2006-07-20 23:24:28 +00:00
dtrg 22db34a460 Fixed revision history. 2006-07-20 23:10:07 +00:00
dtrg cf461cd82f First version in CVS. 2006-07-20 23:04:28 +00:00
dtrg 35f2f8b043 Rationalised use of #includes to be more standards-compliant. 2006-07-20 23:04:15 +00:00
dtrg cf4417431f Added the appropriate #! magic at the beginning of shell scripts. (Some modern shells don't like scripts to be without it.) 2006-07-20 23:02:37 +00:00
dtrg 6717b9e700 Changed configuration to now use malloc()/free() rather than sbrk(). 2006-07-20 22:59:25 +00:00
dtrg db11db0cac Added the appropriate #! magic at the beginning of shell scripts. (Some modern shells don't like scripts to be without it.) 2006-07-19 14:09:25 +00:00
dtrg 6073ee934e Rationalised use of #includes to be more standards-compliant. 2006-07-19 14:09:05 +00:00
dtrg 57084134e5 Modified to no longer build LLgen, as it is now distributed seperately. 2006-07-18 17:34:30 +00:00
dtrg d722986e66 Added the appropriate #! magic at the beginning of shell scripts. (Some modern shells don't like scripts to be without it.) 2006-07-18 17:20:46 +00:00
dtrg 1ed24cab9b No longer generates zero bytes in the script's output file. 2006-07-18 17:20:05 +00:00
dtrg 9ca41cf4b6 Worked around unput() not being strictly legal in the tail code section of a yacc input file. 2006-07-18 17:19:20 +00:00
dtrg cd09c29949 Rationalised use of #includes to be more standards-compliant. 2006-07-18 17:18:42 +00:00
dtrg f5bbc20093 Removed unnecessary commas seperating yacc tokens, to prevent warnings. 2006-07-18 17:17:14 +00:00
dtrg 4c0a0e6119 Rationalised use of #includes to be more standards-compliant. 2006-07-18 17:10:29 +00:00
dtrg 8ea67498ed Added the appropriate #! magic at the beginning of shell scripts. (Some modern shells don't like scripts to be without it.) 2006-07-18 17:10:18 +00:00
dtrg e864bf235e Split LLgen off to be self-contained, and not necessarily part of the ACK. Replaced its build system with one based on pm. Rewrote the README. Updated the license text to match the overriding license common to all the ACK. 2006-02-04 00:57:04 +00:00
dtrg 953a565a10 Moved LLgen documentation from the main ACK documentation directory into LLgen's own documentation directory. 2006-02-04 00:43:32 +00:00
dtrg dd57d79b1b Modernised usage of system header files. 2006-02-04 00:37:19 +00:00
dtrg 71a92846dd Modernised usage of system header files. 2006-02-03 22:23:37 +00:00
dtrg c39e85da63 Modernised usage of system header files. Changed the patch buffer (which allowed the library path to be modified with a hex editor) to an environment variable instead. 2006-02-03 22:23:11 +00:00
dtrg 4c0b3bb40f Modernised usage of system header files. 2006-01-24 22:29:19 +00:00
cjhjacobs 26889d3762 Fix: did not deal with quotes in macro definitions properly 2005-06-30 16:54:15 +00:00
dtrg 4ed4d8423f Added some prototyping to stop a compile error with gcc 4. 2005-06-25 13:49:06 +00:00
dtrg f2046954e6 Cleaned up the struct sgtty workaround and made it more generic. 2005-06-24 22:11:27 +00:00
dtrg 779fe568fc Removed an assumption that 'stdin' is a constant, which it's not on Linux. (You can't use it as an initialiser when declaring a global variable.) 2005-06-24 22:10:24 +00:00