Commits

cybershadow committed f10a05f Draft

Pointing to the new project location. Feel free to revert

  • Participants
  • Parent commits 73d8318

Comments (0)

Files changed (1)

-== Home ==
+The GDC project has moved:
 
-Welcome to GDC. This project aims to continue the development of GDC, a GCC frontend for the D programming language.
-
-**Table of Contents**:
-
-<<toc>>
-
-----
-
-== Introduction ==
-
-=== What is GDC? ===
-
-GDC is a frontend for the [[http://www.digitalmars.com/d/ | D programming language]]. By using GCC as a backend, it gives us the ability
-to target the same platforms that GCC targets.
-
-This project was originally started by David Friedman. His original project page can be found [[http://dgcc.sourceforge.net/ | here]].
-Unfortunately, he disappeared from the D scene, and was no longer able to maintain GDC.
-
-This project was the result of an effort to help continue David Friedman's work on GDC.
-
-=== Status ===
-
-D1: [[http://www.digitalmars.com/d/1.0/changelog.html#new1_072|1.072]]
-
-D2: [[http://www.digitalmars.com/d/2.0/changelog.html#new2_057|2.057]]
-
-=== Supported GCC versions ===
-
-*[[http://gcc.gnu.org/gcc-4.5|GCC 4.5.x]]
-*[[http://gcc.gnu.org/gcc-4.6|GCC 4.6.x]]
-
-----
-
-== Installation ==
-
-=== Prerequesites ===
-
-The minimum system requirements you need to obtain and build GDC are:
-* gcc and g++
-* autoconf2.59
-* automake1.9
-* libmpc-dev
-* libmpfr-dev
-* libgmp3-dev
-* mercurial
-* patch
-
-For cross-compiling/multilib builds, you should also have installed:
-* gcc-multilib (and maybe g++-multilib)
-
-
-=== Building ===
-
-Run these commands in a terminal:
-{{{
-    hg clone https://bitbucket.org/goshawk/gdc
-    mkdir gdc/dev     
-}}}
-Grab GCC sources from [[http://gcc.gnu.org/mirrors.html | a mirror]]. You need the gcc-core and gcc-g++ archives.
-
-Unpack the archives in the gdc/dev dir.  This creates something like gdc/dev/gcc-4.6.1.
-Run these commands: 
-{{{
-    cd gdc/dev/gcc-4.6.2
-    ln -s ../../../d gcc/d
-    ./gcc/d/setup-gcc.sh
-    mkdir objdir
-    cd objdir 
-    ../configure --enable-languages=d --disable-bootstrap \
-        --disable-shared --disable-nls --prefix=/opt/gdc \
-        --with-bugurl="https://bitbucket.org/goshawk/gdc/issues" \
-        --enable-checking=yes \
-        --disable-libgomp --disable-libmudflap
-    make -j2 2>&1 | tee build.log                            # insert your number of cores in the -j argument
-    make install
-    export PATH=$PATH:/opt/gdc/bin
-}}}
-
-This will configure for a GDC D2 build. If you want D1, add the switch **-v1** to the **./gcc/d/setup-gcc.sh** command. If you want to compile a **release version** drop --disable-bootstrap and use --enable-checking=release.
-
-Other configure arguments you might want to use:
-{{{
-    --[enable|disable]-nls       # Native Language Support (NLS), lets GCC output diagnostics in languages other than English
-    --[enable|disable|-lto       # link-time optimizations
-    --[enable|disable|-multilib  # in particular to build 32 and 64 bit apps
-    --with-arch=native           # sets native as the default for the -march option,
-                                 # useful if you are only compiling code for your own machine anyway
-}}}
-
-If you get compile errors un Ubuntu (at least x64 version) configure it **with** multilib (and install gcc-multilib of course).
-
-The **make** command will perform the build.
-**make install** will install the compiled GDC.
-Use **make install-strip** to automatically strip symbols from the huge executables.
-
-Since prefix is set to /opt/gdc you will install GDC there so it will not mess up with the installed GCC. Go in /opt/gdc/bin to find the GDC executable.
-
-With this source structure it will be easy to do modifications of the sources. To do changes, just modify files in **gdc/d** directory, it will be visible by the GCC sources. The **objdir** directory is used for configuration so that the GCC sources remains unmodified.
-
-After following the instructions you can do a quick test:
-
-{{{
-goshawk@jupiter:/$ gdc -v
-Using built-in specs.
-COLLECT_GCC=gdc
-COLLECT_LTO_WRAPPER=/opt/gdc/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.3/lto-wrapper
-Target: x86_64-unknown-linux-gnu
-Configured with: ../configure --enable-languages=d [...]
-Thread model: posix
-gcc version 4.5.3 20110428 (gdc hg, using dmd 2.052) (GDC 7cb42bd4eb94 DMD 2.053)
-goshawk@jupiter:/$ gcc -v
-Using built-in specs.
-COLLECT_GCC=gcc
-COLLECT_LTO_WRAPPER=/opt/gdc/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.5.3/lto-wrapper
-Target: x86_64-unknown-linux-gnu
-Configured with: ../configure --enable-languages=d [...]
-Thread model: posix
-gcc version 4.5.3 20110428 (gdc hg, using dmd 2.052) (GDC 7cb42bd4eb94 DMD 2.053)
-}}}
-
-As you can see your current shell session will start using the newly compiled GCC and GDC, overriding but not overwriting the system default.
-
-=== Building on Windows ===
-
-If you need to install GDC on Windows, [[MinGW|here]] is a guide to install GDC with MinGW.
-
-For 64-bit MinGW see [[MinGW64|here]].
-
-If that does not work for you on Windows, take a look at [[MinGWCompile|this guide]] for using GDC on Windows.
-
-=== Building for Android ===
-Initial development on Adroid has started. See [[GDC%20on%20Android|here]] for more information.
-
-----
-
-== Support ==
-
-Support can be found in a couple of different places:
-
-*On irc.freenode.net, there is a GDC irc channel. It is channel #d.gdc.
-
-*The D.gnu newsgroup, located [[http://www.digitalmars.com/webnews/newsgroups.php?search_txt=&group=D.gnu|here]].
-
-*Sending an inbox message to one of the maintainers.
-
-The D.gnu newsgroup should also be used for general discussion about GDC.
-A bug, proposal, or enhancement can go to the issue tracker on bitbucket.
-If you choose to use the issue tracker, please label the issue appropriately. (bug, proposal, enhancement)
-
-----
-
-== Repository Guidelines ==
-
-These are the repository guidelines that a committer should follow while committing to the GDC repository.
-
-The **default** branch must never be broken but should contain a working version of the compiler. If you want to develop a new feature or do a merging with a newer GCC or DMD or Phobos, it's strongly encuraged that you create your own branch. If you don't know about mercurial branches, [[http://hgbook.red-bean.com/read/managing-releases-and-branchy-development.html|this small tutorial will fill all the knowledge requirements to create a new branch]]. 
-
-It's better if you give to your branch a short name representing the topic of that branch. You can commit in anytime to that branch and broke it, people interested in the same feature will work in the same branch. When a feature is fully developed and stable, where stable means that it compiles, it can be merged to the **default** branch. After the merging, before the default branch is committed to the central repository, you have to build and test that the **default** branch compiles too.
-
-After that you can delete your branch from the repository.
-
-----
-
-== Getting Involved ==
-
-There are a lot of things that you can do to get involved and help out with GDC.
-They vary from making simple documentation for some of the files, finding and submitting bugs,
-testing out bugs on different platforms, or submitting patches for GDC. Any help is appreciated.
-
-=== Bugs ===
-
-A list of open bugs can be found [[http://bitbucket.org/goshawk/gdc/issues?status=new&status=open|here.]]
-Bugs created before this repository was made can be found [[http://d.puremagic.com/issues/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=DGCC+aka+GDC&content=|here.]]
-This list is still maintained, however, new bugs should be submitted to the Bitbucket repository.
-A simple comment saying "This also happens/doesn't happen on Mac\Windows\Linux under GCC x.x.x(GCC version)" can be useful in helping solve the bug.
-
-If you have found a possible bug in GDC, please submit it! Here are some guidelines that you should follow when submitting a bug:
-#Make sure the bug has not already been submitted to GDC.
-#Include the GCC version. (e.g. 4.1.2, 4.2.4, 4.3.5, etc)
-#Include the hg changeset or commit you are using for GDC. (e.g. commit 114 or changset 6f03952ff48f)
-#Include your operating system.(Mac/Windows/flavour of Linux)
-#Include a simple test case demonstrating the issue.
-#if possible, include a patch to fix the issue.
-
-=== Documentation ===
-
-This documentation page includes information about the internals of GDC, and will most likely only be of use
-to you if you want to help with the development of GDC. Installation can be found on the Home wiki page
- (this page!).
-
-[[DeveloperDocumentation|Developer Documentation]]
-
-This documentation page aims to explain a couple of aspects of GDC to user, such as its usage,
-differences from DMD, and known issues. If can't figure out how to use GDC, take a look here.
-
-[[UserDocumentation|User Documentation]]
-
-This documentation page aims to explain aspects of the MinGW port of GDC.  Such as MinGW specific features, Windows specific topics and known issues.
-
-[[MinGWDocumentation| MinGW Documentation]]
+* http://gdcproject.org/
+* https://github.com/D-Programming-GDC