Page 1 of 1

[zcc] Updated to process many files to something other than .bin

Posted: Thu Sep 01, 2016 5:14 am
by alvin
Latest nightly build: http://nightly.z88dk.org/
Last successful build: http://www.z88dk.org/forum/viewforum.php?id=19

Effective with the September 2 build, zcc has been updated to properly generate any output type from multiple input files.

In addition to this:

(1) .asm files, which are asm files written by users, were erroneously being processed by the optimizer. This is no longer the case.
(2) .s files have been introduced. .s files are asm files written for sdcc in asz80 syntax. zcc will now translate those to standard zilog form (.asm)
(3) --no-crt compiles have been fixed so that they can generate .map, .sym and .def files like regular compiles.
(4) -x has been added to get zcc to make a library out of all the input files on a compile line (this is awaiting a bugfix to z80asm expected soon)

What does it mean to process many input files into a single output type?

This is already done by zcc when an output binary is being produced. All source files, whether .c, .asm or .o are incorporated into a single output binary to form the executable.

If "-E" is specified to zcc, it will now process all .c files into .i files after processing by the preprocessor and then stop. Other input file types will be ignored.

If "-a" is specified to zcc, it will now process all .c and .s files into .asm files after processing by the c compilers or copt and then stop. Other input files will be ignored.

If "-c" is specific to zcc, it will now process all .c, .s, .asm files into .o files. Other input files will be ignored.

Formerly, only the first input file was given this treatment. The -c case will be especially important as we place more attention on code generated for bankswitched memory systems.