/* Developer-related programs for which source may be found: These files are focused on traditional-style programming, with an emphasis on compiled/interperted languages. Primary areas include: compilers static analysis tools performance tools debugging revision control converters followed by a ``todo'' section for ebuilds not yet built/installed/used. Each program will be postfixed with a key to represent the os for which it was designed/built on. Operating system legend: g - Gentoo o - OpenBSD */ compilers: byacc - best variant of yacc {g} gcc - default compiler for c/c++ (+ gas/java) {go} icc - intel c/c++ compiler {g} make - proper build utility (language-independant) {go} mmix - Knuth's taocp compiler {go} nasm - netwide assembler {go} perl - open language; default compiler {go} pilrc - PalmOS Resource Compiler and Viewer {g} python - open language; default compiler {go} rec - reverse engineering compiler {g} ruby - open language; default compiler {go} shc - shell script compiler/scrambler {g} static analysis tools: check - unit test framework for C {g} cppunit - c++ port of junit {g} cunit - c unit testing framework (library-based) {g} efence - malloc debugger (library-based) {g} flawfinder - finds ``hits'' (c/c++) (can be used as a fuzzer) {go} its4 - security scanner (c/c++) {g} leaktracer - trace and analyze memory leaks in c++ {g} pscan - problem scanner (c) {g} rats - rough auditing tool for security (c/perl/php/python) {g} splint - stanford lint implementation (c) {go} performance tools: kcachegrind - visualization of valgrind output {g} memprof - profiling/leak detection {g} oprofile - transparent, low-overhead system-wide profiler {g} valgrind - open-source memory debugger {g} valkyrie - gui for valgrind {g} debugging: ald - assembly language debugger {g} cscope - interactively examine a c program {g} ccmalloc - memory debugging library {g} ddd - gui for gdb {g} gdb - primary debugger {go} fenris - tracer/debugger/decompiler {g} insight - gui for gdb {g} kscope - gui for cscope {g} lsof - lists open files {go} ltrace - real-time library call information {g} memdump - simple memory dumper {g} nm - list symbols from object files {go} objdump - display info from object files {go} strace - real-time system call information {g} revision control: cvs - concurrent versioning system {go} rcs - revision control system {go} subversion - cvs replacement {g} converters: intel2gas - Intel (nasm) to AT&T (gas) {go} other: astyle - beautify/reindent c/c++/java sources {g} bcpp - indents c/c++ sources {g} bsdiff - binary diff based upon a suffix alg. {g} cdecl - turn english phrases to C or C++ declarations {g} cproto - generate c-prototypes from source code {g} ctags - creates tags files for code browsing in editors {go} cutils - random c utilities {g} dstat - iostat/vmstat/ifstat replacement {go} eclipse - ide for a bunch of languages {g} injectso - inject shared libraries into running processes {g} re2c - generate c-based recognizers from regular expressions {g} todo: sar - monitor disk i/o statistics - find ebuild libsafe ?