openbsd-ports/print/lilypond/patches/patch-lily_include_smobs_hh
kili d5d63af4d9 Update to lilypond-2.14.1.
This still uses the downloaded documentation instead of building
it, because it's no fun do build the documentation on low-memory
and/or slow systems like arm (it ran for a couple of days on my
armish, and then it failed with a segfault, which i then couldn't
reproduce for the specific file the segfaults happend on).

It also doesn't depend on the texinfo-4.13 port I sent to ports@
(but not yet committed) recently.

Running it on some of my (rather oldish, i.e. written for lilypond-2.10
and older) files produces mixed results -- simple stuff still works,
some stuff reports failure (yet creates correct output, which is
strange).  Complicated music like my (never finished) work on the
Busoni transcription of BWV-1004/Partita II doesn't work at all
(but iirc, it didn't with lilypond-2.12, either).

make regress currently fails with this version, because it would
need the texinfo port and a new test-baseline, which I didn't yet
create.

Some work to build the documentation for real (possibly shielded by a
pseudo flavor) will follow.
2011-07-06 14:14:06 +00:00

29 lines
886 B
Plaintext

$OpenBSD: patch-lily_include_smobs_hh,v 1.3 2011/07/06 14:14:06 kili Exp $
Make g++ 3.3.5 happy.
--- lily/include/smobs.hh.orig Sun Jun 12 16:05:50 2011
+++ lily/include/smobs.hh Sun Jun 19 13:45:40 2011
@@ -104,6 +104,12 @@
SCM smobbed_copy () const; \
DECLARE_BASE_SMOBS (CL)
+#if __GNUC__ < 3 || __GNUC__ == 3 && __GNUC_MINOR__ < 4
+# define ATTR_PURE
+#else
+# define ATTR_PURE __attribute__((pure))
+#endif
+
#define DECLARE_BASE_SMOBS(CL) \
friend class Non_existent_class; \
private: \
@@ -114,7 +120,7 @@
static int print_smob (SCM s, SCM p, scm_print_state*); \
public: \
static SCM equal_p (SCM a, SCM b); \
- static CL *unsmob (SCM s) __attribute__((pure)) \
+ static CL *unsmob (SCM s) ATTR_PURE \
{ \
if (SCM_NIMP (s) && SCM_CELL_TYPE (s) == smob_tag_) \
return (CL *) SCM_CELL_WORD_1 (s); \