Template Version: @(#)onepager.txt 1.35 07/11/07 SMI Copyright 2007 Sun Microsystems
1. Introduction 1.1. Project/Component Working Name: Sun Studio C/C++/dbx Collection 1.2. Name of Document Author/Supplier: Douglas Walls (Douglas.Walls at Sun.COM> 1.3. Date of This Document: 1/8/2009 1.3.1. Date this project was conceived: 10/2008 1.4. Name of Major Document Customer(s)/Consumer(s): OpenSolaris 1.4.1. The PAC or CPT you expect to review your project: SPDE PAC 1.4.2. The ARC(s) you expect to review your project: LSARC 1.4.3. The Director/VP who is "Sponsoring" this project: Kurt.Goebel at Sun.Com 1.4.4. The name of your business unit: CODE (C/C++ Compilers, Optimization, and Debugger) 1.5. Email Aliases: 1.5.1. Responsible Manager: Kurt Goebel <Kurt.Goebel at Sun.COM> 1.5.2. Responsible Engineer: Douglas Walls <Douglas.Walls at Sun.COM> 1.5.3. Marketing Manager: Ikroop Dhillon <Ikroop.Dhillon at sun.com> 1.5.4. Interest List: tools-compilers at opensolaris.org 2. Project Summary 2.1. Project Description: The project will provide C, C++ and dbx from the current Sun Studio Express release for OpenSolaris. 2.2. Risks and Assumptions: No known risks or assumptions at this time. 3. Business Summary 3.1. Problem Area: Default compilers on OpenSolaris 3.2. Market/Requester: OpenSolaris 3.3. Business Justification: Encourage FOSS inclusion into OpenSolaris repositories by minimizing compiler-related porting effort. The target customers are people building software on Solaris Nevada derived distributions. Not necessarily people building Solaris itself. The culture of Nevada is for consolidations to deliver the latest semi-stable development builds, which are periodically updated. This closely matches the Sun Studio Express release cycle. 3.4. Competitive Analysis: Main competitors: Platforms & Tool Suite Offerings - Red Hat: GCC (bundled and supported) - Windows: Microsoft Visual Studio (unbundled) - MacOS: Xcode (gcc-based), LLVM effort 3.5. Opportunity Window/Exposure: 04/2009 to coincide with the next release of OpenSolaris. 3.6. How will you know when you are done?: The project will be on-going always tracking the latest express release of Sun Studio C, C++ and dbx 4. Technical Description: 4.1. Details: - Existing C, C++ and dbx components of Sun Studio Express 2008.11 release will be installed in /usr/compilers/suncc2008.11 similar to LSARC/2008/776 GNU Developer Collection - Links will be created in /usr/bin, e.g. /usr/bin/cc, /usr/bin/CC, /usr/bin/dbx, etc., to point to the appropriate binaries /usr/compilers/suncc2008.11/bin. - Links will be created in /usr/man, e.g. /usr/man/man1/cc, /usr/man/man1/CC, /usr/man/man1/dbx, etc., to point to man pages in /usr/compilers/suncc2008.11/man/man1. 4.2. Bug/RFE Number(s): Not applicable. 4.3. In Scope: - Sun Studio C, C++ compilers and dbx 4.4. Out of Scope: 4.5. Interfaces: The following soft links will be created in /usr/bin to point to the appropriate binaries of /usr/compilers/suncc2008.11/bin. We may choose to omit some of these links which do not contribute to minimizing compiler-related porting efforts to encourage FOSS inclussion into OpenSolaris repositories. /usr/bin/bcheck /usr/bin/c++filt /usr/bin/c89 /usr/bin/c99 /usr/bin/cb /usr/bin/cc /usr/bin/CC /usr/bin/CCadmin /usr/bin/cflow /usr/bin/cscope /usr/bin/ctcr /usr/bin/ctrace /usr/bin/cxref /usr/bin/dbx /usr/bin/dem /usr/bin/dumpstabs /usr/bin/dwarfdump /usr/bin/fbe /usr/bin/fpversion /usr/bin/indent /usr/bin/lint /usr/bin/rtc_patch_area /usr/bin/sunc89 /usr/bin/sunc99 /usr/bin/suncc /usr/bin/sunCC /usr/bin/tcov 4.6. Doc Impact: Links will be created in /usr/share/man/* for the following man pages: /usr/compilers/suncc2008.11/man1/CC.1 /usr/compilers/suncc2008.11/man1/CCadmin.1 /usr/compilers/suncc2008.11/man1/bcheck.1 /usr/compilers/suncc2008.11/man1/binopt.1 /usr/compilers/suncc2008.11/man1/c++filt.1 /usr/compilers/suncc2008.11/man1/c89.1 /usr/compilers/suncc2008.11/man1/c99.1 /usr/compilers/suncc2008.11/man1/cb.1 /usr/compilers/suncc2008.11/man1/cc.1 /usr/compilers/suncc2008.11/man1/cflow.1 /usr/compilers/suncc2008.11/man1/cscope.1 /usr/compilers/suncc2008.11/man1/ctrace.1 /usr/compilers/suncc2008.11/man1/cxref.1 /usr/compilers/suncc2008.11/man1/dbx.1 /usr/compilers/suncc2008.11/man1/dem.1 /usr/compilers/suncc2008.11/man1/fbe.1 /usr/compilers/suncc2008.11/man1/fpversion.1 /usr/compilers/suncc2008.11/man1/indent.1 /usr/compilers/suncc2008.11/man1/inline.1 /usr/compilers/suncc2008.11/man1/lint.1 /usr/compilers/suncc2008.11/man1/rtc_patch_area.1 /usr/compilers/suncc2008.11/man1/ss_attach.1 /usr/compilers/suncc2008.11/man3/gcFixPrematureFrees.3 /usr/compilers/suncc2008.11/man3/gcInitialize.3 /usr/compilers/suncc2008.11/man3cc4/cartpol.3 /usr/compilers/suncc2008.11/man3cc4/cplx.intro.3 /usr/compilers/suncc2008.11/man3cc4/cplxerr.3 /usr/compilers/suncc2008.11/man3cc4/cplxexp.3 /usr/compilers/suncc2008.11/man3cc4/cplxops.3 /usr/compilers/suncc2008.11/man3cc4/cplxtrig.3 /usr/compilers/suncc2008.11/man3cc4/filebuf.3 /usr/compilers/suncc2008.11/man3cc4/fstream.3 /usr/compilers/suncc2008.11/man3cc4/interrupt.3 /usr/compilers/suncc2008.11/man3cc4/ios.3 /usr/compilers/suncc2008.11/man3cc4/ios.intro.3 /usr/compilers/suncc2008.11/man3cc4/istream.3 /usr/compilers/suncc2008.11/man3cc4/manip.3 /usr/compilers/suncc2008.11/man3cc4/ostream.3 /usr/compilers/suncc2008.11/man3cc4/queue.3 /usr/compilers/suncc2008.11/man3cc4/sbufprot.3 /usr/compilers/suncc2008.11/man3cc4/sbufpub.3 /usr/compilers/suncc2008.11/man3cc4/ssbuf.3 /usr/compilers/suncc2008.11/man3cc4/stdiobuf.3 /usr/compilers/suncc2008.11/man3cc4/stream_MT.3 /usr/compilers/suncc2008.11/man3cc4/stream_locker.3 /usr/compilers/suncc2008.11/man3cc4/strstream.3 /usr/compilers/suncc2008.11/man3cc4/task.3 /usr/compilers/suncc2008.11/man3cc4/task.intro.3 /usr/compilers/suncc2008.11/man3cc4/tasksim.3 /usr/compilers/suncc2008.11/man3x/_rtc_check_free.3x /usr/compilers/suncc2008.11/man3x/_rtc_check_malloc.3x /usr/compilers/suncc2008.11/man3x/_rtc_check_malloc_result.3x /usr/compilers/suncc2008.11/man3x/_rtc_check_realloc.3x /usr/compilers/suncc2008.11/man3x/_rtc_check_realloc_result.3x /usr/compilers/suncc2008.11/man3x/_rtc_hide_region.3x /usr/compilers/suncc2008.11/man3x/_rtc_off.3x /usr/compilers/suncc2008.11/man3x/_rtc_on.3x /usr/compilers/suncc2008.11/man3x/_rtc_record_free.3x /usr/compilers/suncc2008.11/man3x/_rtc_record_malloc.3x /usr/compilers/suncc2008.11/man3x/_rtc_record_realloc.3x /usr/compilers/suncc2008.11/man3x/_rtc_report_error.3x /usr/compilers/suncc2008.11/man3x/rtc_api.3x /usr/compilers/suncc2008.11/man4/dbxrc.4 4.7. Admin/Config Impact: No change. 4.8. HA Impact: No change. 4.9. I18N/L10N Impact: Sun Studio C/C++/dbx Collection is I18N L10N to be coordinated with Nevada L10N 4.10. Packaging & Delivery: Name Stability Notes ==== ========= ===== SUNWcompilers Committed Sun Studio C/C++/dbx core cluster SUNWcompilerlinks Committed Sun Studio C/C++/dbx /usr/bin /usr/man links 4.11. Security Impact: No impact. 4.12. Dependencies: SUNWlibC C++ stdlibs SUNWlibms limtsk, etc. SUNWcar Core Architecture, (Root) SUNWcsd Core Solaris Devices SUNWcsr Core Solaris, (Root) SUNWcsu Core Solaris, (Usr) SUNWesu Extended System Utilities SUNWhea Header files SUNWkvm Core Architecture, (Kvm) SUNWtoo Programming Tools 5. Reference Documents: LSARC/2008/776 GNU Developer Collection LSARC/2006/280 Tools DVD for S10u2 PSARC/2007/074 /usr/gnu Established precedent of having program visible by multiple names. 6. Resources and Schedule: 6.1. Projected Availability: April 2009 to coincide with OpenSolaris 2009.04 6.2. Cost of Effort: .5 developers. 6.3. Cost of Capital Resources: No additional capital resources were required. 6.4. Product Approval Committee requested information: 6.4.1. Consolidation or Component Name: Devpro 6.4.3. Type of CPT Review and Approval expected: FastTrack 6.4.4. Project Boundary Conditions: 6.4.5. Is this a necessary project for OEM agreements: No 6.4.6. Notes: 6.4.7. Target RTI Date/Release: Build 107 01/26/2009. 6.4.8. Target Code Design Review Date: Completed 6.4.9. Update approval addition: - SPDE PAC scheduling in progress - Solaris PAC scheduling in progress 6.5. ARC review type: FastTrack 6.6. ARC Exposure: open 6.6.1. Rationale: Not applicable. 7. Prototype Availability: 7.1. Prototype Availability: Not applicable. 7.2. Prototype Cost: Not Applicable.