Il giorno dom 5 ago 2018 alle 11:15, Phil Holmes <m...@philholmes.net>
ha scritto:
Knut,
To get this issue incorporated in our GUB Github repo, please either
issue a pull request with the patch at
https://github.com/gperciva/gub or send me a git-formatted patch and
I'll push it to the repo.
Phil, find attached the git-formatted patch.
Here's how I made it:
cd path/to/gub
wget https://codereview.appspot.com/download/issue369750043_40001.diff
patch -p1 < issue369750043_40001.diff
Add updated and new files and commit:
git commit --author="Knut Petersen <knut_peter...@t-online.de>"
Thanks.
I will make a new release once GUB is updated.
Can you wait a few days?
I'd like to send a PR about this issue:
https://sourceforge.net/p/testlilyissues/issues/5396/
Thanks
Federico
>From 0f1b76ef0d08acfe59e0272a3cf2c952a095adb4 Mon Sep 17 00:00:00 2001
From: Knut Petersen <knut_peter...@t-online.de>
Date: Wed, 12 Sep 2018 11:42:59 +0200
Subject: [PATCH] Various fixes
See LilyPond issue #5384:
https://sourceforge.net/p/testlilyissues/issues/5384/
---
gub/gup.py | 2 +-
gub/specs/darwin/cross/gcc.py | 2 +-
gub/specs/darwin/odcctools.py | 2 +-
gub/specs/ghostscript.py | 2 +-
gub/specs/git.py | 2 +-
gub/specs/glibc.py | 1 +
gub/specs/libpng.py | 2 +-
gub/specs/lilypond.py | 1 +
gub/specs/make.py | 1 +
patches/glibc-allow-make4.patch | 11 +++++
patches/make_glob2.patch | 77 +++++++++++++++++++++++++++++++++
11 files changed, 97 insertions(+), 6 deletions(-)
create mode 100644 patches/glibc-allow-make4.patch
create mode 100644 patches/make_glob2.patch
diff --git a/gub/gup.py b/gub/gup.py
index b165bd91..76004b24 100644
--- a/gub/gup.py
+++ b/gub/gup.py
@@ -202,7 +202,7 @@ class FileManager:
if not f or f.endswith ('/'):
continue
try:
- del self._file_package_db[f]
+ del self._file_package_db[str(f)]
except:
printf ('db delete failing for ', f)
del self._package_file_db[name]
diff --git a/gub/specs/darwin/cross/gcc.py b/gub/specs/darwin/cross/gcc.py
index f38e717a..a0c349b0 100644
--- a/gub/specs/darwin/cross/gcc.py
+++ b/gub/specs/darwin/cross/gcc.py
@@ -5,7 +5,7 @@ from gub import loggedos
from gub import cross
class Gcc__darwin (cross_gcc.Gcc):
- dependencies = ['odcctools']
+ dependencies = ['tools::gmp', 'tools::mpfr', 'tools::mpc', 'odcctools']
patches = cross_gcc.Gcc.patches + [
'gcc-4.8.2-darwin-fixinc.patch',
'gcc-4.8.2-darwin-libgcc.patch',
diff --git a/gub/specs/darwin/odcctools.py b/gub/specs/darwin/odcctools.py
index 7bce9043..87730b58 100755
--- a/gub/specs/darwin/odcctools.py
+++ b/gub/specs/darwin/odcctools.py
@@ -12,7 +12,7 @@ class Odcctools (cross.AutoBuild): #skews dependencies:, build.SdkBuild):
source = 'http://lilypond.org/gub/download/odcctools-iphone-dev/odcctools-iphone-dev-278.tar.gz'
patches = ['odcctools-r211-word.patch',
'odcctools-config-Wno-long-double.patch']
- dependencies = ['darwin-sdk', 'tools::flex', 'tools::automake']
+ dependencies = ['darwin-sdk', 'tools::bison', 'tools::flex', 'tools::automake']
def __init__ (self, settings, source):
cross.AutoBuild.__init__ (self, settings, source)
if 'x86_64-linux' in self.settings.build_architecture:
diff --git a/gub/specs/ghostscript.py b/gub/specs/ghostscript.py
index dfdb1c2a..77e99e7d 100644
--- a/gub/specs/ghostscript.py
+++ b/gub/specs/ghostscript.py
@@ -302,7 +302,7 @@ class Ghostscript__freebsd (Ghostscript):
class Ghostscript__freebsd__x86 (Ghostscript__freebsd):
# ***FIXME*** Ghostscript 9.20 for freebsd-x86 raises seg fault.
# So we use Ghostscript 9.15.
- source = 'http://downloads.ghostscript.com/public/old-gs-releases/ghostscript-9.15.tar.gz'
+ source = 'https://ftp.osuosl.org/pub/blfs/conglomeration/ghostscript/ghostscript-9.15.tar.bz2'
patches = [
'ghostscript-9.15-make.patch',
'ghostscript-9.15-cygwin.patch',
diff --git a/gub/specs/git.py b/gub/specs/git.py
index 5cf19cc0..a6b81174 100644
--- a/gub/specs/git.py
+++ b/gub/specs/git.py
@@ -13,7 +13,7 @@ class Git (target.AutoBuild):
make_flags = '''V=1 NO_PERL=NoThanks'''
class Git__tools (tools.AutoBuild, Git):
- dependencies = ['curl', 'expat', 'zlib']
+ dependencies = ['curl', 'expat', 'zlib', 'tools::gettext']
configure_flags = (tools.AutoBuild.configure_flags
+ ' --without-openssl'
+ ' --without-tcltk'
diff --git a/gub/specs/glibc.py b/gub/specs/glibc.py
index 9a9f4e38..0f27b5e5 100644
--- a/gub/specs/glibc.py
+++ b/gub/specs/glibc.py
@@ -42,6 +42,7 @@ to *not* look in /.
class Glibc (target.AutoBuild, cross.AutoBuild):
source = 'http://lilypond.org/downloads/gub-sources/glibc/glibc-2.3-20070416.tar.bz2'
patches = [
+ 'glibc-allow-make4.patch',
'glibc-2.3-powerpc-initfini.patch',
'glibc-2.3-powerpc-socket-weakalias.patch',
'glibc-2.3-powerpc-lround-weakalias.patch',
diff --git a/gub/specs/libpng.py b/gub/specs/libpng.py
index e9278a80..4edf7377 100644
--- a/gub/specs/libpng.py
+++ b/gub/specs/libpng.py
@@ -2,7 +2,7 @@ from gub import target
from gub import tools
class Libpng (target.AutoBuild):
- source = 'http://sourceforge.net/projects/libpng/files/libpng12/1.2.56/libpng-1.2.56.tar.xz'
+ source = 'https://sourceforge.net/projects/libpng/files/libpng12/older-releases/1.2.56/libpng-1.2.56.tar.xz'
dependencies = [
'zlib-devel',
'tools::autoconf',
diff --git a/gub/specs/lilypond.py b/gub/specs/lilypond.py
index 9456f941..f6d2a138 100644
--- a/gub/specs/lilypond.py
+++ b/gub/specs/lilypond.py
@@ -262,6 +262,7 @@ class LilyPond__darwin__ppc (LilyPond__darwin):
class LilyPond_base (target.AutoBuild):
source = LilyPond.source
+ branch = LilyPond.branch
install_after_build = False
ghostscript_version = ghostscript.Ghostscript.static_version ()
def __init__ (self, settings, source):
diff --git a/gub/specs/make.py b/gub/specs/make.py
index df69c5e4..4a2f7bfc 100644
--- a/gub/specs/make.py
+++ b/gub/specs/make.py
@@ -4,6 +4,7 @@ from gub import tools
class Make_make__tools (tools.AutoBuild):
source = 'http://ftp.gnu.org/pub/gnu/make/make-3.81.tar.gz'
+ patches = [ 'make_glob2.patch']
def __init__ (self, settings, source):
tools.AutoBuild.__init__ (self, settings, source)
self.source._unpack = self.source._unpack_promise_well_behaved
diff --git a/patches/glibc-allow-make4.patch b/patches/glibc-allow-make4.patch
new file mode 100644
index 00000000..81242770
--- /dev/null
+++ b/patches/glibc-allow-make4.patch
@@ -0,0 +1,11 @@
+--- old/configure 2018-07-08 16:22:39.141946102 +0200
++++ new/configure 2018-07-08 16:23:27.781477977 +0200
+@@ -4154,7 +4154,7 @@
+ ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'`
+ case $ac_prog_version in
+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+- 3.79* | 3.[89]*)
++ 3.79* | 3.[89]* | 4.[0-9.]*)
+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+
diff --git a/patches/make_glob2.patch b/patches/make_glob2.patch
new file mode 100644
index 00000000..00be91c1
--- /dev/null
+++ b/patches/make_glob2.patch
@@ -0,0 +1,77 @@
+diff -Naur old/configure new/configure
+--- old/configure 2006-04-01 08:40:00.000000000 +0200
++++ new/configure 2018-07-17 22:53:07.611101819 +0200
+@@ -13619,10 +13619,9 @@
+ #include <glob.h>
+ #include <fnmatch.h>
+
+-#define GLOB_INTERFACE_VERSION 1
+ #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1
+ # include <gnu-versions.h>
+-# if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION
++# if _GNU_GLOB_INTERFACE_VERSION == 1 || _GNU_GLOB_INTERFACE_VERSION == 2
+ gnu glob
+ # endif
+ #endif
+diff -Naur old/configure.in new/configure.in
+--- old/configure.in 2006-04-01 08:36:40.000000000 +0200
++++ new/configure.in 2018-07-17 22:51:33.679953018 +0200
+@@ -351,10 +351,9 @@
+ #include <glob.h>
+ #include <fnmatch.h>
+
+-#define GLOB_INTERFACE_VERSION 1
+ #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1
+ # include <gnu-versions.h>
+-# if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION
++# if _GNU_GLOB_INTERFACE_VERSION == 1 || _GNU_GLOB_INTERFACE_VERSION == 2
+ gnu glob
+ # endif
+ #endif
+diff -Naur old/dir.c new/dir.c
+--- old/dir.c 2006-02-11 23:16:04.000000000 +0100
++++ new/dir.c 2018-07-17 22:56:50.513180032 +0200
+@@ -1194,6 +1194,32 @@
+ }
+ #endif
+
++/* Similarly for lstat. */
++#if !defined(lstat) && !defined(WINDOWS32) || defined(VMS)
++# ifndef VMS
++# ifndef HAVE_SYS_STAT_H
++int lstat (const char *path, struct stat *sbuf);
++# endif
++# else
++ /* We are done with the fake lstat. Go back to the real lstat */
++# ifdef lstat
++# undef lstat
++# endif
++# endif
++# define local_lstat lstat
++#elif defined(WINDOWS32)
++/* Windows doesn't support lstat(). */
++# define local_lstat local_stat
++#else
++static int
++local_lstat (const char *path, struct stat *buf)
++{
++ int e;
++ EINTRLOOP (e, lstat (path, buf));
++ return e;
++}
++#endif
++
+ void
+ dir_setup_glob (glob_t *gl)
+ {
+@@ -1201,9 +1227,8 @@
+ gl->gl_opendir = open_dirstream;
+ gl->gl_readdir = read_dirstream;
+ gl->gl_closedir = ansi_free;
++ gl->gl_lstat = local_lstat;
+ gl->gl_stat = local_stat;
+- /* We don't bother setting gl_lstat, since glob never calls it.
+- The slot is only there for compatibility with 4.4 BSD. */
+ }
+
+ void
--
2.17.1
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel