BSD Ports

lang/pcc 1.0.0nb1 NetBSD

Portable C compiler

System
NetBSD
Repository
pkgsrc
Maintainer
[email protected]
Categories
lang
Package size
166.8 KiB, 454.4 KiB installed

Description

The compiler is based on the original Portable C Compiler by S. C. Johnson, written in the late 70's. Even though much of the compiler has been rewritten, some of the basics still remain.

The intention is to write a C99 compiler while still keeping it small, simple, fast and understandable. Think of it as if it shall be able to compile and run on PDP11 (even if it may not happen in reality). But with this in mind it becomes important to think twice about what algorithms are used.

The compiler is conceptually structured in two parts; pass1 which is language-dependent, does parsing, typechecking and build trees, and pass2 which is mostly language-independent.

About 50% of the frontend code and 80% of the backend code has been rewritten. Most stuff is written by Anders Magnusson, with the exception of the data-flow analysis part and the SSA conversion code which is written by Peter A Jonsson, and the Mips port that were written as part of a project by undergraduate students at LTU.

In the other systems

SystemPortVersion
NetBSDlang/pcc1.0.0nb1
FreeBSDlang/pcc1.1.0_2
OpenBSDlang/pcc/pcc1.1.0.20231021p0
DragonFlylang/pcc1.1.0_2
MidnightBSDlang/pcc1.1.0_1
HardenedBSDlang/pcc1.1.0_2
GhostBSDlang/pcc1.1.0_2

Install

Binary package:

pkgin install pcc

From pkgsrc:

cd /usr/pkgsrc/lang/pcc && make install clean

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

RepositoryVersion
NetBSD 10.1 x86_641.0.0nb1
NetBSD 10.1 aarch64-
SmartOS / illumos x86_64-
macOS 15 arm64-

Dependencies

No port depends on this one.