CRUX-ARM : Home

Home :: Documentation :: Download :: Development :: Community :: Ports :: Packages :: Bugs :: Links :: About :: Donors
make: updated to 3.82
authorVictor Martinez <pitillo@ono.com>
Mon, 4 Apr 2011 06:52:07 +0000 (06:52 +0000)
committerVictor Martinez <pitillo@ono.com>
Mon, 4 Apr 2011 06:52:07 +0000 (06:52 +0000)
make/.md5sum
make/Pkgfile
make/savannah-bugs.patch [new file with mode: 0644]

index d35b41188062c0808aeb7da6a16f8d4272b16196..49035322facbe3acd0d87333bf64faf0c6db3331 100644 (file)
@@ -1 +1,2 @@
 1a11100f3c63fcf5753818e59d63088f  make-3.82.tar.bz2
+af491e6f1134e32550da84d3ca8132d3  savannah-bugs.patch
index 499caef29d7c38c7430d53ffa2eb585c3be1bedd..5ac609134e24a0fef1c56766f132d2239810c6a7 100644 (file)
@@ -6,10 +6,12 @@
 name=make
 version=3.82
 release=1
-source=(ftp://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2)
+source=(ftp://ftp.gnu.org/gnu/$name/$name-$version.tar.bz2
+        savannah-bugs.patch)
 
 build() {
   cd $name-$version
+  patch -p0 -i ../savannah-bugs.patch
   ./configure --build=$CHOST \
               --host=$CTARGET \
               --prefix=/usr \
diff --git a/make/savannah-bugs.patch b/make/savannah-bugs.patch
new file mode 100644 (file)
index 0000000..f2bb9c0
--- /dev/null
@@ -0,0 +1,89 @@
+https://savannah.gnu.org/bugs/?30612
+https://savannah.gnu.org/bugs/?30723
+https://savannah.gnu.org/bugs/?31743 (no longer visible)
+
+--- main.c     2010-07-19 14:10:53.000000000 +0700
++++ main.c     2011-01-12 21:31:30.114891591 +0700
+@@ -1,3 +1,4 @@
++
+ /* Argument parsing and main program of GNU Make.
+ Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
+ 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
+@@ -1138,7 +1139,7 @@
+      a macro and some compilers (MSVC) don't like conditionals in macros.  */
+   {
+     const char *features = "target-specific order-only second-expansion"
+-                           " else-if shortest-stem undefine"
++                           " else-if shortest-stem undefine oneshell"
+ #ifndef NO_ARCHIVES
+                            " archives"
+ #endif
+@@ -2093,7 +2094,7 @@
+             const char *pv = define_makeflags (1, 1);
+             char *p = alloca (sizeof ("MAKEFLAGS=") + strlen (pv) + 1);
+             sprintf (p, "MAKEFLAGS=%s", pv);
+-            putenv (p);
++            putenv (allocated_variable_expand (p));
+           }
+         if (ISDB (DB_BASIC))
+--- read.c     2010-07-13 08:20:42.000000000 +0700
++++ read.c     2011-01-12 21:31:23.497486028 +0700
+@@ -3028,7 +3028,7 @@
+             {
+               /* This looks like the first element in an open archive group.
+                  A valid group MUST have ')' as the last character.  */
+-              const char *e = p + nlen;
++              const char *e = p;
+               do
+                 {
+                   e = next_token (e);
+@@ -3084,19 +3084,19 @@
+          Go to the next item in the string.  */
+       if (flags & PARSEFS_NOGLOB)
+         {
+-          NEWELT (concat (2, prefix, tp));
++          NEWELT (concat (2, prefix, tmpbuf));
+           continue;
+         }
+       /* If we get here we know we're doing glob expansion.
+          TP is a string in tmpbuf.  NLEN is no longer used.
+          We may need to do more work: after this NAME will be set.  */
+-      name = tp;
++      name = tmpbuf;
+       /* Expand tilde if applicable.  */
+-      if (tp[0] == '~')
++      if (tmpbuf[0] == '~')
+       {
+-        tildep = tilde_expand (tp);
++        tildep = tilde_expand (tmpbuf);
+         if (tildep != 0)
+             name = tildep;
+       }
+@@ -3152,7 +3152,11 @@
+             else
+               {
+                 /* We got a chain of items.  Attach them.  */
+-                (*newp)->next = found;
++                if (*newp)
++                  (*newp)->next = found;
++                else
++                  *newp = found;
++
+                 /* Find and set the new end.  Massage names if necessary.  */
+                 while (1)
+--- read.c     2010/11/06 21:56:24     1.195
++++ read.c     2010/11/30 14:48:53     1.196
+@@ -1811,7 +1811,8 @@
+           int len = strlen(v->name);
+           gv = lookup_variable (v->name, len);
+-          if (gv && (gv->origin == o_env_override || gv->origin == o_command))
++          if (gv && v != gv
++              && (gv->origin == o_env_override || gv->origin == o_command))
+             {
+               if (v->value != 0)
+                 free (v->value);