1 # Copyright 2009 Michael F. Witten
3 # This file is part of the gcc-svn PKGBUILD system.
5 # The gcc-svn PKGBUILD system is free software: you can redistribute it
6 # and/or modify it under the terms of the GNU General Public License as
7 # published by the Free Software Foundation, either version 3 of the
8 # License, or (at your option) any later version.
10 # The gcc-svn PKGBUILD system is distributed in the hope that it will be
11 # useful, but WITHOUT ANY WARRANTY; without even the implied warranty
12 # of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 # General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with the gcc-svn PKGBUILD system. If not, see
17 # <http://www.gnu.org/licenses/>.
19 # Maintainer/Author : Michael Witten <mfwitten>
27 # This PKGBUILD is designed to be highly flexible: customizable,
28 # extensible, comprehensible, and all of that good stuff that
29 # programmers (including me) like to pretend they have achieved.
31 # In the best scenario, you can just play around with the options
32 # in the `Config' section of this file; if you feel the need to
33 # add extra bells and whistles, then familiarize yourself with
34 # the supplementary file `PKGBUILD_tools' and try to work within
35 # the framework/conventions that it showcases, so that you can
36 # easily share your modifications.
38 # An interesting point to note is that every package dependency
39 # is listed with an exact version number (sans package release).
40 # This is because [it is my opinion that the] relationships between
41 # packages are generally brittle; it is better to be forced to
42 # confront explicitly any change that occurs in the dependencies.
44 # This policy may turn out to be more of a burden than anticipated,
45 # but the hope is that any such burden is outweighed by stronger
46 # guarantees of reliability.
48 # NOTE: You'll likely need to set LD_LIBRARY_PATH in order to run
49 # programs built with the compilers installed by this package.
50 # Use something like this:
52 # LD_LIBRARY_PATH=$install_prefix/lib path/to/executable
58 # These `options' have three states:
64 # * Default : neither _with_* nor _without_* specififed;
65 # either on or off will be selected implicitly
66 # in some way (perhaps comments should specify)
68 # However, not all such _with_* and _without_* options
69 # have been defined; you may need to write one yourself
70 # (they are just bash functions in PKGBUILD_tools).
72 # Various phases of the build
74 # If you're hacking on the code, you should probably
75 # turn-off (that is, comment-out) at least the `clean',
76 # `config, and `test' phases:
78 _with_phase_source HEAD # the revision you want
82 _with_phase_test # introduces extra makedepends
85 # Set your makepkg `options' array here:
87 options=('!libtool' '!strip')
89 # The Graphite loop optimizations:
93 # texinfo documentation:
101 # DVI documentation (currently this is unsupported, because
102 # the gcc Makefiles provide no rule for installing DVI docs;
103 # if ever such a rule exists, the necessary DVI code is already
104 # written and just needs to be uncommented in PKGBUILD_tools):
108 # HTML documentation:
112 # A custom installation prefix:
114 _with_prefix /usr/local
116 # Name transformations on binaries:
118 #_with_program_prefix prefix
119 _with_program_suffix -svn
120 #_with_program_transform_name sed_substitution
122 # /etc/profile.d script for setting paths in environment
123 # variables (PATH, etc.):
125 _with_append_paths_script
126 #_with_prepend_paths_script
128 # Only the libraries for the native architecture:
132 # Kind of threading support:
136 # Build compilers/libraries for these specific languages
137 # (each needs a setup function in PKGBUILD_tools):
141 # The gnu_unique_object relocation for C++ template static data
142 # members and inline function local statics:
144 _with_gnu_unique_object
146 # Link-time optimization (using libelf):
150 # Ignore warnings while building gcc:
152 #_without_error_on_warning
154 # By default, a native toolchain is built during a 3-stage boostrapping
155 # process; uncomment one of the following to select a variation on that
156 # bootstrapping process:
159 # Save storage by removing stage{1,2} object files when they are no
160 # no longer required:
161 #_with_bootstrap_lean
163 # Use profile information to optimize the final product:
164 #_with_bootstrap_profiled
166 # Ignore warnings during the test phase (the default is to ask
167 # whether to continue; the test phase pretty much always fails):
169 _with_ignore_phase_test_failure
171 # Non-default GCC flags when compiling the stage2 and stage3 compilers.
172 # For example: By default, each stage's *executables* are built with
173 # debugging information which occupies a significant amount of disk space.
174 # The following would override this default and cut the space required by
175 # about 40% (as the docs claim), but debugging may be more difficult
176 # (libraries will still be built with debugging symbols):
178 #_with_boot_cflags -O
180 # A build config for additional customization
181 # (see http://gcc.gnu.org/install/build.html):
183 #_with_build_config bootstrap-debug bootstrap-debug-big
185 ##############################################################################
194 pkgdesc='The GNU Compiler Collection (SVN Version); the latest PKGBUILD has not been tested.'
197 url=http://gcc.gnu.org
199 source=(PKGBUILD_tools COPYING)
200 md5sums=(0e0f2ac20566e2b0f6e9189f1225bd02 d32239bcb673463ab874e80d47fae504)
202 _pkgbuild_setup_makedepends
203 _pkgbuild_setup_depends
205 build() { _pkgbuild_build; } # tomfoolery to appease aur.archlinux.org's attempt to be useful