Commit Graph

55 Commits

Author SHA1 Message Date
Oliver Schmidt
37c492b544 Replaced builtin linker configs with ordinary .cfg files.
The benefits are:
- Independency of ld65 build from perl
- More transparent behaviour
2013-04-09 23:09:46 +02:00
ol.sc
f24ff82ea2 Renamed apple-geos.cfg to geos-apple.cfg and added it as built-in configuration.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5366 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 12:28:44 +00:00
ol.sc
4c82d5e0c2 Renamed geos.cfg to geos-cbm.cfg.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5365 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-02 12:18:18 +00:00
uz
b064002266 Added a tpool module that implements a global pool for generic types, so we
can merge duplicate ones and assign them global ids.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5262 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-08-22 17:53:00 +00:00
uz
307b8d88c3 Reenable optimizations.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5223 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-08-19 10:46:49 +00:00
uz
68db31c53b Changed data type used to store line numbers from unsigned long to unsigned.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5222 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-08-19 10:44:45 +00:00
uz
2f75733e43 Rearrange debug info output. Add scopes to the debug info.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5117 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-08-04 15:58:54 +00:00
uz
f04d65a662 Generalized the CodeRange structure used for line infos and renamed it to Span.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5112 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-08-04 12:31:37 +00:00
uz
1f95085ffe Read scopes from the object files.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5103 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-08-01 20:54:42 +00:00
uz
da792b3fd0 Separate processing the linker config file into two phases: The config file is
read when the -t or -C switch is encountered and parts of it are processed.
The remaining parts are processed when all object files and libraries have
been read. To make this work, the expression evaluation in cfgexpr has been
rewritten to generate true expression trees. This means that expressions in
the linker config may use exports from the object files. 

Separation of config file processing is the base for several enhancements, for
example forced imports by linker config.

This code needs more work and is only very, very, very roughly tested.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4840 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-08 21:52:24 +00:00
uz
6c0a9c0438 Patch to correct the linkorder in the make files to make the --as-needed
ldflag work. By Mario Fetka.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4838 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-07 11:34:51 +00:00
uz
0b4c486a49 Replace tabs by spaces in file lists.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4275 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-29 13:32:09 +00:00
uz
4056e97587 Use "override" when appending to CFLAGS, so this works even when CFLAGS is
specified on the command line.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4271 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-29 13:06:35 +00:00
uz
16f05a78c2 Create the .inc files before creating the dependency file, so we avoid
problems with files that weren't found.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4269 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-29 11:59:10 +00:00
uz
a16dcb549f Separate the linker config for the apple2enh target from the ones for the
apple2.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4235 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-26 16:12:02 +00:00
uz
b8e665e837 Change the makefiles so that CFLAGS that are special for the application are
appended after assigning the base value to CFLAGS. This allows to change
CFLAGS on the command line without too much hassle.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4219 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-24 15:07:11 +00:00
uz
9a4ec37b40 Change search paths for the linker.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4193 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-18 19:00:24 +00:00
uz
f62b7a564e The "inc" target needed for the snapshot build script seems to have been lost.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3981 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-07-28 19:40:23 +00:00
uz
823d0b7636 Makefile cleanup. Among other things, allow use of the --as-needed linker flag
by rearranging arguments for the linker.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3922 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-08 17:19:45 +00:00
cuz
84706bd2d5 Fixed portability problems with va_copy. In three places, calls to fstat
had to be replaced by calls to stat, because fileno is no longer available
when forcing the compiler into pure c89 (or c99) mode.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3683 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-12-11 12:40:51 +00:00
cuz
aa7cdf30de Added simple expressions for the config file
git-svn-id: svn://svn.cc65.org/cc65/trunk@3556 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-07-28 19:50:22 +00:00
cuz
f962da83c2 Added the builtin config for the lynx game console
git-svn-id: svn://svn.cc65.org/cc65/trunk@3224 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-08 18:51:37 +00:00
cuz
3b58383277 Allow to override CC65_LIB on the command line
git-svn-id: svn://svn.cc65.org/cc65/trunk@3199 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-23 19:05:49 +00:00
cuz
bcf09a96bb New target APPLE2ENH
git-svn-id: svn://svn.cc65.org/cc65/trunk@2910 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-11 21:21:33 +00:00
cuz
2541ddd2f6 New target: supervision
git-svn-id: svn://svn.cc65.org/cc65/trunk@2495 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-10 16:30:55 +00:00
cuz
5537aee205 More debug file output
git-svn-id: svn://svn.cc65.org/cc65/trunk@2441 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-09-14 21:08:05 +00:00
cuz
79edfdd0df Use $(RM) instead of rm -f
git-svn-id: svn://svn.cc65.org/cc65/trunk@2402 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-20 18:05:44 +00:00
cuz
88d2cc0410 INCS didn't include nes.inc
git-svn-id: svn://svn.cc65.org/cc65/trunk@2308 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-13 18:54:31 +00:00
cuz
bb24d025f6 Added assertions
git-svn-id: svn://svn.cc65.org/cc65/trunk@2202 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-06 12:45:19 +00:00
cuz
4937cd236f Restructuring the object file format
git-svn-id: svn://svn.cc65.org/cc65/trunk@2196 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-06-03 22:19:46 +00:00
cuz
0957959976 Add file search path capability (still unused)
git-svn-id: svn://svn.cc65.org/cc65/trunk@2178 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-29 09:35:11 +00:00
cuz
6ace6309cd Added the NES target
git-svn-id: svn://svn.cc65.org/cc65/trunk@2121 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-02 13:49:49 +00:00
cuz
e41c0adbb2 New target c16
git-svn-id: svn://svn.cc65.org/cc65/trunk@1563 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-21 21:22:26 +00:00
cuz
f0d89e09bc Added VIC20 port changes from Steve Schmidtke
git-svn-id: svn://svn.cc65.org/cc65/trunk@1376 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-08-07 05:18:13 +00:00
cuz
606ecafccd New target: oric atmos
git-svn-id: svn://svn.cc65.org/cc65/trunk@1296 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-06-03 20:14:11 +00:00
cuz
dab745e4b1 New target 'module'
git-svn-id: svn://svn.cc65.org/cc65/trunk@1263 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-04-25 05:14:14 +00:00
cuz
ebbd68673b Added/completed/debugged o65 support for Lunix
git-svn-id: svn://svn.cc65.org/cc65/trunk@1126 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-12-01 13:34:51 +00:00
cuz
453a8b704f Used __attribute ((unused)) instead of -Wno-unused-parameter
git-svn-id: svn://svn.cc65.org/cc65/trunk@987 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-30 22:04:19 +00:00
cuz
1a65e30fa0 Fixed a few warnings
git-svn-id: svn://svn.cc65.org/cc65/trunk@938 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-15 13:36:59 +00:00
cuz
6be0510138 Added the CBM510 as a new target system
git-svn-id: svn://svn.cc65.org/cc65/trunk@910 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-13 19:49:27 +00:00
cuz
3889a2bec9 Added dbg file generation
git-svn-id: svn://svn.cc65.org/cc65/trunk@764 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-29 07:39:46 +00:00
cuz
275da22a66 Use a separate structure for file infos instead of just the name.
git-svn-id: svn://svn.cc65.org/cc65/trunk@749 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 21:32:57 +00:00
cuz
bfbedfa54b Added line infos
git-svn-id: svn://svn.cc65.org/cc65/trunk@748 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-05-23 19:03:40 +00:00
cuz
1bb9d0fa70 Changed the makefiles to work under OS/2 using EMX (Changes from
Mirco Miranda).


git-svn-id: svn://svn.cc65.org/cc65/trunk@590 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-01-05 16:59:41 +00:00
cuz
6632756ceb Replaced the unused NES target by BBC
git-svn-id: svn://svn.cc65.org/cc65/trunk@497 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-30 08:55:16 +00:00
cuz
b9970cb7da Working on the condes feature
git-svn-id: svn://svn.cc65.org/cc65/trunk@451 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-20 15:22:57 +00:00
cuz
53a885df58 Make target for generating the .inc files
git-svn-id: svn://svn.cc65.org/cc65/trunk@448 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-19 17:39:12 +00:00
cuz
12996ee12b New module to handle initializers
git-svn-id: svn://svn.cc65.org/cc65/trunk@432 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-03 09:31:18 +00:00
cuz
18840117ec Removed underlines from structure names.
Moved the fragment type into its own module.


git-svn-id: svn://svn.cc65.org/cc65/trunk@430 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-02 22:11:25 +00:00
cuz
1226f095e1 Moved the target configurations into separate files
git-svn-id: svn://svn.cc65.org/cc65/trunk@416 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-10-31 18:08:25 +00:00