a dependency maintenance tool for progres4gl. It is intended to be used in conjuction with aegis (aegis.sourceforge.net), a source code configuration tool. It (re)compiles progres4GL programs whose sourcecode has changed
Apache Compile Kit
tries to automagically compile your Apache with PHP for you
Apache Toolbox provides a means to easily compile Apache with SSL, PHP (v4 or v3), MySQL, ZendOptimizer, mod_auth_nds, mod_dynvhost, WebDAV etc.
Auto-recompile is a small emacs add-on which allows you to fix compilation errors faster. It does this by continously compiling the program you are working on while you are fixing problems. It eliminates the need to explicitly start a compilation for every fix you make and manages your compilations and error-lists in the background so that all you have to do is go from error to error and fix them until the program compiles.
a tool designed to simplify the creation of MPI data-types
scans a package's Makefile.am and configure.in (or .ac) and creates a customized bourne shell script which can create the configure script with a single command
bdiff is a small utility to do what diff/patch pair does with text files. It handles binary files too.
a parser generator in the style of yacc
an attempt to develop a real decompiler for native executables through the open source community. A decompiler takes as input an executable file, and attempts to create a high level, compilable, possibly even maintainable source file that does the same thing
a modified version of yacc that supports automatic backtracking
an experimental project that allows for a C source file to be "Compiled on Demand" prior to being executed. The source files are compiled and executed on the fly
an infrastructure for building C compilers. It is written in C++, and consists of a set of classes for representing a C program as an abstract syntax tree (AST)
a gcc cache. It can be compared with the well known ccache. It uses a LD_PRELOADed shared object to catch invocations to cc1, cc1plus and as, transparently supports all build methods and can cache gcc bootstraps
a compiler cache. It acts as a caching pre-processor to C/C++ compilers, using the -E compiler switch and a hash to detect when a compilation can be satisfied from cache. This often results in a 5 to 10 times speedup in common compilations
Clang is a compiler front end for the C, C++, and Objective-C programming languages. It uses the Low Level Virtual Machine (LLVM) as its back end. The combination of clang and LLVM provides the majority of a toolchain, allowing the replacement of the whole GCC stack. Read more
a compiler toolkit that supports all phases of compiler construction in providing generators for scanners, parsers, abstract syntax trees, attribute evaluators, traversers of syntax tree and back ends
CompBenchmarks is a benchmarking environment for compilers. It provides a package for downloading, compiling, and evaluating some well-known C/C++ benchmarks and applications. Results are given in easily parseable plain text files that can be sent to the CompBenchmarks Web site.
to create a recursive descent parser for C99. The output from the parser should be a parse tree
CScout is a source code analyzer and refactoring browser for collections of C programs. It can process workspaces of multiple projects (we define a project as a collection of C source files that are linked together) mapping the complexity introduced by the C preprocessor back into the original C source code files.
which should free the programmer from writing unnecessary testframes for debugging and testing of C++ code
Devel Live CD
Devel Live CD includes a minimal toolchain from Fedora that makes it possible to compile the Linux kernel and other software. This CD has been created to compile programs for 4MLinux.
Distributed Multi-User Compilation System
DMUCS is a system that extends distcc to allow multiple users to do remote C/C++ compiles on a shared compilation farm. It monitors the load averages of the machines in the compilation farm so that the fastest machines will be assigned compilation tasks at all times.
a tool to help write yacc parsers/compilers. It takes as input a grammar written in bnf (ebnf support is planned) and outputs a c++ abstract syntax tree that supports the visitor pattern, along with a yacc parser that builds the tree
elfrc is a program which can turn arbitrary files into ELF object files which can then be linked into your program directly and accessed via simple, user-defined symbol names.
provides modern compiler construction facilities to users with a wide range of sophistication. It offers complete solutions for commonly-encountered language implementation subtasks and contains libraries of reusable specifications, making possible the production of high-quality implementations from simple problem descriptions
a tool which supports the authoring and execution of EPP scripts using any BSF supported scripting language
Flagpoll is a tool for developers to use meta-data files for storing information on what is needed to compile their software. Think of it as the rpm of software development. It provides developers with total control over which packages, versions, architectures, et cetera that they want to use meta-data from. Instead of specifying other packages' cflags and ldflag manually, you can call `flagpoll mylib --cflags --ldflags` and it will retrieve the flags for its package as well as its dependencies.
Flex is a fast lexical analyser generator. It is a tool for generating programs that perform pattern-matching on text. There are many applications for Flex, including writing compilers in conjunction with GNU Bison.
a modern toolkit for compiler writers and implementors of domain specific languages
GetOpts is a simple to use command line parser for C/C++/ObjC.
GNU Object Cache: a clone of ccache, with the goal of supporting other compilers than GCC and adding additional features
a C# and Java parser generator (compiler compiler). It improves upon simlar tools (like yacc and ANTLR) by creating well-commented and readable source code, by having automatic error recovery and detailed error messages, and by support for testing and debugging grammars without generating source code
Icecream was created by SUSE based on distcc. Like distcc, Icecream takes compile jobs from a (KDE) build and distributes it among remote machines allowing a parallel build.
a KDE program to compile the sources without the xterm or console
a LALR(1) parser generator. It takes a context free grammar and converts it into a subroutine that will parse a file using that grammar. Lemon is similar to the much more famous programs
LLnextgen is a (partial) reimplementation of the LLgen Extended-LL(1) parser generator that is part of the Amsterdam Compiler Kit (ACK). It takes an EBNF-like description of the grammar with associated semantic actions in C as input, and generates C code. The generated code is strict ANSI C, so it should compile with all current C compilers.
NanoXML is a small non-validating parser for Java.
Open64 Compiler Tools
Open64 is a suite of optimizing compiler development tools for Intel Itanium(TM) systems running Linux. The Open64 project is the continuation of the SGI Pro64(TM) compiler suite which was released under the GNU General Public License (GPL). The Open64 compiler suite currently includes compilers for C, C++, and Fortran90/95 compilers for the IA-64 Linux ABI and API standards. Read more
an interpreted dynamic parser which is well suited to rapid development of parsing solutions, starting from rapid language prototyping to full fledged compilers
(commercial) a complete Language Development Environment that generates C, C++, Java, Delphi, and VBS source code from input Language Description Grammars for building Assemblers, Compilers, Interpreters, Browsers, Page Description Languages, Language Translators, Syntax Directed Editors, Language Validators, Natural Language Processors, Expert System Shells, and Query languages
A PREttier Compiler-Compiler is an infinite-lookahead compiler-compiler for context dependent grammars.
uses the python parser to generate Sax2 events, and thus enable to visualize the python document as a XML tree
R2cl is a minimal, proof of concept translator from the R or S language into Common Lisp. An increase in speed of over 1000 times can then be achieved using the free CMU Common Lisp native code compiler on the resulting code, making it comparable to FORTRAN, Ada or C.
Rapier RDF Parser
The RDF parser for Redland (RDF Parser for Redland - RaPieR) and is designed to integrate with it closely.
a tool for writing fast and flexible lexers that is in the order of 2-3 times faster than a flex based scanner, and its input model is much more flexible
REFLEX (relocalizable flex) is an updated variation of flex 2.5.4 with support for relocalizable scanners. Unlike flex, it supports non-POSIX locales.
Shaggy's Homebrew Alternative Compiler Compiler: a replacement for YACC which supports most of the YACC syntax but isn't limited to one token of lookahead
a scanner/parser generator designed to address some shortcomings of the traditional lex/yacc combination
The bintrans Dynamic Binary Translator
a dynamic binary translator. That means it runs programs on architectures they were not compiled for
(shareware) a package that generates software to parse text input
eXtended FLAT (XFLAT) is a binary format that will support dynamic shared libraries on MMU-less Linux (uClinux) platforms. XFLAT is a mature suite of development tools including compiler, linker, loader, dynamic loader and support tools.
an XML based extensible HTML generator written in Python. XIST is also a DOM parser (built on top of SAX2) with a very simple and pythonesque tree API
given YACC-like and LEX-like input files, generates a C++ program that generates all strings of a user-specified length
YPlayer is a teaching and debugging tool to aid in the study of language parsing and the construction of language parsers.