`A Retargetable C Compiler: Design and Implementation'
(Addison-Wesley, 1995, ISBN 0-8053-1670-1).
lcc is a production compiler with a hand crafted lexical analyzer and a
hand-coded recursive decent parser. The lexer and parser code is well
written and very easy to read (and learn from :-)).
lcc compiles much faster than FreeBSD's stock [gcc] compiler. However, it
does not under stand FreeBSD's "long long" data type.
Contributions by: Soren Schmidt
mythical MIX computer, defined in:
Donald E. Knuth, _The Art of Computer Programming, Vol. 1: Fundamental
Algorithms_. Addison-Wesley, 1973 (2nd ed.)
Some of us were playing with it at school... so I made a port of it.
want higher optimization levels result in unsafer binaries).
Fix bug, that causes core dumps when using higher optimization levels
than -O2.
Results with dhrystone 2.1 (1000000 loops):
stock cc (2.7.2.1 from current) : 136k (136xxx)
pgcc-current with -O2 : 138k
pgcc-current with -O6 : 172k
And no coredump anymore. Reason for coredump:
With -O3 cc1 does an register-to-register-copy optimization and it tries
to write some debugging information about what it is doing into a file
that does not exist unless you have instructed cc1 to dump all its
information about its internal state. (From: Sascha Blank)
BTW: PLIST is really coming soon, it's on my todo list ;-)
BTW2: Is Sascha already in the contributors list ? Have to go to work now.
Submitted by: Sascha Blank <blank@sliphost37.uni-trier.de>
optimizations. The motivation to make a separate pgcc port is, to
provide two versions, an official release, which is missing the
leading edge of developement and an interesting current version,
which fixes some things and might breake (or not) others.
Fact is, that one is able to compile and run a complete FreeBSD-current
kernel without trouble and so closes 2 PR's.
>Number: 1221
>Category: bino
and possibly
>Number: 1222
>Category: ports (should be tested by the submitter.
PLISTs.
Note: I know that this is going to break some symlinks and/or .so
includes, I will back some of these out as I run into these during
package building.
names, e.g., "m3build-4" and "m3build-4.0". This makes it possible for
ports that depend on this one to require a specific version. Since the
shared libraries have been moved into a separate port, their version
numbers can no longer be used for that purpose.
will be used to support SOCKS operation in the soon-to-be-released next
version of CVSup.
A tip of the hat to: Darryl Okahata, who developed the patches
necessary to make the SOCKS library work with Modula-3's multithreaded
I/O system.
the new "modula-3-lib" port. The split allows one to save a lot of
disk space by installing only the shared libraries needed for executing
programs. The full "modula-3" port is needed only if you want to
compile programs as well.
"modula-3-lib". It installs only the shared libraries needed for
executing Modula-3 programs. This saves a lot of disk space for
people who need to run Modula-3 programs but don't need to build
them. The original "modula-3" port now depends on this one, and
uses it to install the compiler and the rest of the development
system.
Also, everything is now built with optimization. I have been
testing this for at least a month, and haven't seen any problems
from it. It makes the libraries and executables substantially
smaller.
This new port also includes some hooks that will make SOCKS support
possible in the near future.
(The license agreement is similar to GPL and, thus, there should be
no problem with redistributing the original archive as long as we put no
restriction.)
all the COMMENTs! No package names, no version numbers, no "this is
absolutix-3.1.2" type comments that have zero information contents.
Now, without any bad examples to follow, nobody has an excuse to import
a port with those kind of comments. :)
Phew! 238 ports modified!
Closes PR ports/1728.
(But I don't know how to actually change the state of PR.
Could someone do this for me? Or tell me how?)
Submitted by: shanee@rabbit.augusta.de
sure that they are executable. On at least one user's system, the
copies taken from /usr/src/contrib did not have their execute bits
set.
Suggested by: max@wide.ad.jp
Use new custom distfiles which are MUCH smaller than the ones from
DEC.
Use the gcc-2.7.2.1 sources on the system if they are found in
/usr/src/contrib, to avoid having to fetch that distfile.
Use an existing Modula-3 compiler to bootstrap the new one, if
there happens to be one installed on the system. Again, this
eliminates the need to fetch one of the distfiles.
Update the built-in thread-safe malloc to the latest version of
phkmalloc.
Use new custom distfiles which are MUCH smaller than the ones from
DEC.
Use the gcc-2.7.2.1 sources on the system if they are found in
/usr/src/contrib, to avoid having to fetch that distfile.
Use an existing Modula-3 compiler to bootstrap the new one, if
there happens to be one installed on the system. Again, this
eliminates the need to fetch one of the distfiles.
Update the built-in thread-safe malloc to the latest version of
phkmalloc.