This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] sample config for arm-unkown-linux-gnueabi, gcc-4.4.0, glibc-2.9


On Wednesday 25 March 2009 00:42:41 Yann E. MORIN wrote:
> Here's the patch I came up with. Care to have a look, please?

Hmmm... Attached, this time... :-(

YEM.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| --==< ^_^ >==-- `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
`------------------------------^-------^------------------^--------------------'
Index: ct-ng.trunk/config/cc/gcc.in
===================================================================
--- ct-ng.trunk/config/cc/gcc.in	(revision 1443)
+++ ct-ng.trunk/config/cc/gcc.in	(working copy)
@@ -112,10 +112,39 @@
     depends on EXPERIMENTAL
     select CC_GCC_4_3_or_later
 
+config CC_V_4_4_0
+    bool
+    prompt "4.4.0 snapshot"
+    depends on EXPERIMENTAL
+    select CC_GCC_4_3_or_later
+    select CC_GCC_4_4_snapshot
+
 # CT_INSERT_VERSION_ABOVE
 # Don't remove above line!
 endchoice
 
+config CC_GCC_4_3_or_later
+    bool
+    default n
+    select GMP_MPFR
+
+config CC_GCC_4_4_snapshot
+    bool
+    default n
+
+config CC_GCC_4_4_snapshot_date
+    string
+    prompt "Snapshot date"
+    depends on CC_GCC_4_4_snapshot
+    help
+      Enter the snapshot date in the form YYYYMMDD.
+      Snapshots are made every friday, at around 22:30 GMT+1,
+      so look at your calendar to find a suitable date.
+
+      Also, you may have to adapt the patches/gcc/4.4-* patch
+      directory to fit your selected snapshot. Curently, snapshot
+      dated 20090320 has the appropriate patches in place. YMMV.
+
 config CC_VERSION
     string
     default "3.2.3" if CC_V_3_2_3
@@ -138,14 +167,10 @@
     default "4.3.1" if CC_V_4_3_1
     default "4.3.2" if CC_V_4_3_2
     default "4.3.3" if CC_V_4_3_3
+    default "4.4-" if CC_V_4_4_0
 # CT_INSERT_VERSION_STRING_ABOVE
 # Don't remove above line!
 
-config CC_GCC_4_3_or_later
-    bool
-    default n
-    select GMP_MPFR
-
 config CC_CXA_ATEXIT
     bool
     prompt "Use __cxa_atexit"
Index: ct-ng.trunk/scripts/build/cc/gcc.sh
===================================================================
--- ct-ng.trunk/scripts/build/cc/gcc.sh	(revision 1443)
+++ ct-ng.trunk/scripts/build/cc/gcc.sh	(working copy)
@@ -4,15 +4,19 @@
 
 # Download gcc
 do_cc_get() {
+    local version="${CT_CC_VERSION}${CT_CC_GCC_4_4_snapshot_date}"
+
     # Ah! gcc folks are kind of 'different': they store the tarballs in
     # subdirectories of the same name! That's because gcc is such /crap/ that
     # it is such /big/ that it needs being splitted for distribution! Sad. :-(
     # Arrgghh! Some of those versions does not follow this convention:
     # gcc-3.3.3 lives in releases/gcc-3.3.3, while gcc-2.95.* isn't in a
     # subdirectory! You bastard!
-    CT_GetFile "gcc-${CT_CC_VERSION}"   \
-               {ftp,http}://ftp.gnu.org/gnu/gcc{,{,/releases}/gcc-${CT_CC_VERSION}}     \
-               ftp://ftp.irisa.fr/pub/mirrors/gcc.gnu.org/gcc/releases/gcc-${CT_CC_VERSION}
+    CT_GetFile "gcc-${version}"                                                         \
+               {ftp,http}://ftp.gnu.org/gnu/gcc{,{,/releases}/gcc-${version}}           \
+               ftp://ftp.irisa.fr/pub/mirrors/gcc.gnu.org/gcc/releases/gcc-${version}   \
+               ftp://ftp.uvsq.fr/pub/gcc/snapshots/${version}
+
     # Starting with GCC 4.3, ecj is used for Java, and will only be
     # built if the configure script finds ecj.jar at the top of the
     # GCC source tree, which will not be there unless we get it and
@@ -25,13 +29,16 @@
 
 # Extract gcc
 do_cc_extract() {
-    CT_Extract "gcc-${CT_CC_VERSION}"
-    CT_Patch "gcc-${CT_CC_VERSION}"
+    local version="${CT_CC_VERSION}${CT_CC_GCC_4_4_snapshot_date}"
+
+    CT_Extract "gcc-${version}"
+    CT_Patch "gcc-${version}"
+
     # Copy ecj-latest.jar to ecj.jar at the top of the GCC source tree
-    if [ "${CT_CC_LANG_JAVA_USE_ECJ}" = "y"                     \
-         -a ! -f "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/ecj.jar"   \
+    if [ "${CT_CC_LANG_JAVA_USE_ECJ}" = "y"             \
+         -a ! -f "${CT_SRC_DIR}/gcc-${version}/ecj.jar" \
        ]; then
-        CT_DoExecLog ALL cp -v "${CT_TARBALLS_DIR}/ecj-latest.jar" "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/ecj.jar"
+        CT_DoExecLog ALL cp -v "${CT_TARBALLS_DIR}/ecj-latest.jar" "${CT_SRC_DIR}/gcc-${version}/ecj.jar"
     fi
 }
 
@@ -83,6 +90,7 @@
     local core_prefix_dir
     local extra_config
     local lang_opt
+    local version="${CT_CC_VERSION}${CT_CC_GCC_4_4_snapshot_date}"
 
     eval $1
     eval $2
@@ -142,7 +150,7 @@
     CC_FOR_BUILD="${CT_BUILD}-gcc"                  \
     CFLAGS="${CT_CFLAGS_FOR_HOST}"                  \
     CT_DoExecLog ALL                                \
-    "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/configure"  \
+    "${CT_SRC_DIR}/gcc-${version}/configure"        \
         --build=${CT_BUILD}                         \
         --host=${CT_HOST}                           \
         --target=${CT_TARGET}                       \
@@ -174,7 +182,7 @@
         # so we configure then build it.
         # Next we have to configure gcc, create libgcc.mk then edit it...
         # So much easier if we just edit the source tree, but hey...
-        if [ ! -f "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/gcc/BASE-VER" ]; then
+        if [ ! -f "${CT_SRC_DIR}/gcc-${version}/gcc/BASE-VER" ]; then
             CT_DoExecLog ALL make configure-libiberty
             CT_DoExecLog ALL make ${PARALLELMFLAGS} -C libiberty libiberty.a
             CT_DoExecLog ALL make configure-gcc configure-libcpp
@@ -184,7 +192,7 @@
             CT_DoExecLog ALL make ${PARALLELMFLAGS} all-libcpp all-build-libiberty
         fi
         # HACK: gcc-4.2 uses libdecnumber to build libgcc.mk, so build it here.
-        if [ -d "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/libdecnumber" ]; then
+        if [ -d "${CT_SRC_DIR}/gcc-${version}/libdecnumber" ]; then
             CT_DoExecLog ALL make configure-libdecnumber
             CT_DoExecLog ALL make ${PARALLELMFLAGS} -C libdecnumber libdecnumber.a
         fi
@@ -226,6 +234,8 @@
 #------------------------------------------------------------------------------
 # Build final gcc
 do_cc() {
+    local version="${CT_CC_VERSION}${CT_CC_GCC_4_4_snapshot_date}"
+
     # If building for bare metal, nothing to be done here, the static core conpiler is enough!
     [ "${CT_BARE_METAL}" = "y" ] && return 0
 
@@ -282,7 +292,7 @@
     CXXFLAGS_FOR_TARGET="${CT_TARGET_CFLAGS}"       \
     LDFLAGS_FOR_TARGET="${CT_TARGET_LDFLAGS}"       \
     CT_DoExecLog ALL                                \
-    "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/configure"  \
+    "${CT_SRC_DIR}/gcc-${version}/configure"        \
         --build=${CT_BUILD}                         \
         --host=${CT_HOST}                           \
         --target=${CT_TARGET}                       \

--
For unsubscribe information see http://sourceware.org/lists.html#faq

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]