From b81d788c799a576dd1dc0db573639df69d91afef Mon Sep 17 00:00:00 2001 From: Mark Hatle Date: Mon, 11 Jun 2012 13:18:54 -0500 Subject: ossp-uuid: Add oss-uuid package and RPM 5.4.9 integration RPM 5.4.9 now strongly encourages you to have the ossp-uuid library available. Add this recipe, and change RPM to use the uuid functionality. (From OE-Core rev: 8a2b55c5b7c544ec15113bc21e5c62276449c9c3) Signed-off-by: Mark Hatle Signed-off-by: Richard Purdie --- .../ossp-uuid/0001-Change-library-name.patch | 112 +++++++++++++++++++++ ...erve-m-option-status-in-v-option-handling.patch | 55 ++++++++++ .../ossp-uuid/0003-Fix-whatis-entries.patch | 51 ++++++++++ .../ossp-uuid/0004-fix-data-uuid-from-string.patch | 36 +++++++ .../ossp-uuid/ossp-uuid/uuid-libtool.patch | 24 +++++ .../ossp-uuid/ossp-uuid/uuid-nostrip.patch | 16 +++ meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb | 58 +++++++++++ 7 files changed, 352 insertions(+) create mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch create mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch create mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch create mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch create mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch create mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch create mode 100644 meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb (limited to 'meta/recipes-devtools/ossp-uuid') diff --git a/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch new file mode 100644 index 0000000..a46e244 --- /dev/null +++ b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch @@ -0,0 +1,112 @@ +From: Piotr Roszatycki +Date: Wed, 27 Jan 2010 16:53:11 +0100 +Subject: [PATCH] Change library name + +The soname was changed to ossp-uuid to prevend the name clash with e2fsprogs's +uuid library. +--- + Makefile.in | 6 +++--- + perl/Makefile.PL | 12 ++++++------ + php/config.m4 | 2 +- + uuid-config.in | 2 +- + uuid.pc.in | 4 ++-- + 5 files changed, 13 insertions(+), 13 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index d28f4be..c2ba99d 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -62,13 +62,13 @@ PERL = @PERL@ + PHP = @PHP@ + PG_CONFIG = @PG_CONFIG@ + +-LIB_NAME = libuuid.la ++LIB_NAME = libossp-uuid.la + LIB_OBJS = uuid.lo uuid_md5.lo uuid_sha1.lo uuid_prng.lo uuid_mac.lo uuid_time.lo uuid_ui64.lo uuid_ui128.lo uuid_str.lo + +-DCE_NAME = libuuid_dce.la ++DCE_NAME = libossp-uuid_dce.la + DCE_OBJS = uuid_dce.lo $(LIB_OBJS) + +-CXX_NAME = libuuid++.la ++CXX_NAME = libossp-uuid++.la + CXX_OBJS = uuid++.lo $(LIB_OBJS) + + PRG_NAME = uuid +diff --git a/perl/Makefile.PL b/perl/Makefile.PL +index 92f4494..9c6fee6 100644 +--- a/perl/Makefile.PL ++++ b/perl/Makefile.PL +@@ -33,9 +33,9 @@ use Config; + use ExtUtils::MakeMaker; + + # determine source directory +-my ($srcdir) = map { my $d = $_; $d =~ s/\/libuuid\.la$//; $d } +- grep { -f $_ } ("../libuuid.la", glob("../*/libuuid.la")) +- or die "no source directory found (where libuuid.la is located)"; ++my ($srcdir) = map { my $d = $_; $d =~ s/\/libossp-uuid\.la$//; $d } ++ grep { -f $_ } ("../libossp-uuid.la", glob("../*/libossp-uuid.la")) ++ or die "no source directory found (where libossp-uuid.la is located)"; + + # determine extra build options + my $compat = 0; +@@ -47,15 +47,15 @@ WriteMakefile( + VERSION_FROM => 'uuid.pm', + ABSTRACT_FROM => 'uuid.pod', + PREREQ_PM => {}, +- LIBS => [ "-L$srcdir/.libs -L$srcdir -luuid" ], ++ LIBS => [ "-L$srcdir/.libs -L$srcdir -lossp-uuid" ], + DEFINE => '', + INC => "-I. -I$srcdir", + PM => { 'uuid.pm' => '$(INST_LIBDIR)/uuid.pm', + 'uuid.pod' => '$(INST_LIBDIR)/uuid.pod', + ($compat ? ('uuid_compat.pm' => '$(INST_LIBDIR)/../Data/UUID.pm') : ()), + ($compat ? ('uuid_compat.pod' => '$(INST_LIBDIR)/../Data/UUID.pod') : ()), }, +- MAN3PODS => { 'uuid.pod' => '$(INST_MAN3DIR)/OSSP::uuid.3', +- ($compat ? ('uuid_compat.pod' => '$(INST_MAN3DIR)/Data::UUID.3') : ()), }, ++ MAN3PODS => { 'uuid.pod' => '$(INST_MAN3DIR)/OSSP::uuid.3pm', ++ ($compat ? ('uuid_compat.pod' => '$(INST_MAN3DIR)/Data::UUID.3pm') : ()), }, + TYPEMAPS => [ 'uuid.tm' ], + test => { TESTS => 'uuid.ts' . ($compat ? ' uuid_compat.ts' : '') }, + NO_META => 1, +diff --git a/php/config.m4 b/php/config.m4 +index 5091b96..969b457 100644 +--- a/php/config.m4 ++++ b/php/config.m4 +@@ -34,7 +34,7 @@ if test "$PHP_UUID" != "no"; then + PHP_NEW_EXTENSION(uuid, uuid.c, $ext_shared) + AC_DEFINE(HAVE_UUID, 1, [Have OSSP uuid library]) + PHP_ADD_LIBPATH([..], ) +- PHP_ADD_LIBRARY([uuid],, UUID_SHARED_LIBADD) ++ PHP_ADD_LIBRARY([ossp-uuid],, UUID_SHARED_LIBADD) + PHP_ADD_INCLUDE([..]) + PHP_SUBST(UUID_SHARED_LIBADD) + +diff --git a/uuid-config.in b/uuid-config.in +index 8d2a063..5b58812 100644 +--- a/uuid-config.in ++++ b/uuid-config.in +@@ -121,7 +121,7 @@ do + output_extra="$output_extra $uuid_ldflags" + ;; + --libs) +- output="$output -luuid" ++ output="$output -lossp-uuid" + output_extra="$output_extra $uuid_libs" + ;; + * ) +diff --git a/uuid.pc.in b/uuid.pc.in +index c76ad1e..de00c2f 100644 +--- a/uuid.pc.in ++++ b/uuid.pc.in +@@ -36,7 +36,7 @@ Name: OSSP uuid + Description: Universally Unique Identifier (UUID) Library + Version: @UUID_VERSION_RAW@ + URL: http://www.ossp.org/pkg/lib/uuid/ +-Cflags: -I${includedir} +-Libs: -L${libdir} -luuid ++Cflags: -I${includedir}/ossp ++Libs: -L${libdir} -lossp-uuid + Libs.private: @LIBS@ + +-- diff --git a/meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch new file mode 100644 index 0000000..1467207 --- /dev/null +++ b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch @@ -0,0 +1,55 @@ +From: Marco Nenciarini +Date: Wed, 27 Jan 2010 19:46:21 +0100 +Subject: [PATCH] uuid: preserve -m option status in -v option handling + +Bug: 531396 +--- + uuid_cli.c | 19 ++++++++++--------- + 1 files changed, 10 insertions(+), 9 deletions(-) + +diff --git a/uuid_cli.c b/uuid_cli.c +index d1b0b11..14a67fe 100644 +--- a/uuid_cli.c ++++ b/uuid_cli.c +@@ -140,11 +140,12 @@ int main(int argc, char *argv[]) + i = strtol(optarg, &p, 10); + if (*p != '\0') + usage("invalid argument to option 'v'"); ++ version &= ~(UUID_MAKE_V1|UUID_MAKE_V3|UUID_MAKE_V4|UUID_MAKE_V5); + switch (i) { +- case 1: version = UUID_MAKE_V1; break; +- case 3: version = UUID_MAKE_V3; break; +- case 4: version = UUID_MAKE_V4; break; +- case 5: version = UUID_MAKE_V5; break; ++ case 1: version |= UUID_MAKE_V1; break; ++ case 3: version |= UUID_MAKE_V3; break; ++ case 4: version |= UUID_MAKE_V4; break; ++ case 5: version |= UUID_MAKE_V5; break; + default: + usage("invalid version on option 'v'"); + break; +@@ -213,10 +214,10 @@ int main(int argc, char *argv[]) + } + else { + /* encoding */ +- if ( (version == UUID_MAKE_V1 && argc != 0) +- || (version == UUID_MAKE_V3 && argc != 2) +- || (version == UUID_MAKE_V4 && argc != 0) +- || (version == UUID_MAKE_V5 && argc != 2)) ++ if ( (version & UUID_MAKE_V1 && argc != 0) ++ || (version & UUID_MAKE_V3 && argc != 2) ++ || (version & UUID_MAKE_V4 && argc != 0) ++ || (version & UUID_MAKE_V5 && argc != 2)) + usage("invalid number of arguments"); + if ((rc = uuid_create(&uuid)) != UUID_RC_OK) + error(1, "uuid_create: %s", uuid_error(rc)); +@@ -232,7 +233,7 @@ int main(int argc, char *argv[]) + if ((rc = uuid_load(uuid, "nil")) != UUID_RC_OK) + error(1, "uuid_load: %s", uuid_error(rc)); + } +- if (version == UUID_MAKE_V3 || version == UUID_MAKE_V5) { ++ if (version & UUID_MAKE_V3 || version & UUID_MAKE_V5) { + if ((rc = uuid_create(&uuid_ns)) != UUID_RC_OK) + error(1, "uuid_create: %s", uuid_error(rc)); + if ((rc = uuid_load(uuid_ns, argv[0])) != UUID_RC_OK) { +-- diff --git a/meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch new file mode 100644 index 0000000..060a754 --- /dev/null +++ b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch @@ -0,0 +1,51 @@ +From: Marco Nenciarini +Date: Tue, 2 Feb 2010 12:16:49 +0100 +Subject: [PATCH] Fix whatis entries + +Fix whatis entry of uuid.1, uuid.3ossp and uuid++.3ossp manpages +--- + uuid++.pod | 2 +- + uuid.pod | 2 +- + uuid_cli.pod | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/uuid++.pod b/uuid++.pod +index 8b5a4b1..89c5efb 100644 +--- a/uuid++.pod ++++ b/uuid++.pod +@@ -31,7 +31,7 @@ + + =head1 NAME + +-B - B (C++ API) ++B - B (C++ API) + + =head1 VERSION + +diff --git a/uuid.pod b/uuid.pod +index 4ad3742..0179a46 100644 +--- a/uuid.pod ++++ b/uuid.pod +@@ -31,7 +31,7 @@ + + =head1 NAME + +-B - B ++B - B + + =head1 VERSION + +diff --git a/uuid_cli.pod b/uuid_cli.pod +index ddec6bb..df9dc83 100644 +--- a/uuid_cli.pod ++++ b/uuid_cli.pod +@@ -31,7 +31,7 @@ + + =head1 NAME + +-B - B ++B - B + + =head1 VERSION + +-- diff --git a/meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch new file mode 100644 index 0000000..1f92cea --- /dev/null +++ b/meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch @@ -0,0 +1,36 @@ +Description: Support dash-less args to from_string. +Author: Tim Retout +Bug-Debian: http://bugs.debian.org/635607 + +The module Data::GUID depends on Data::UUID supporting this behaviour. + +--- a/perl/uuid_compat.pm ++++ b/perl/uuid_compat.pm +@@ -93,7 +93,9 @@ + $uuid->import('str', + $str =~ /^0x/ + ? join '-', unpack('x2 a8 a4 a4 a4 a12', $str) +- : $str ++ : $str =~ /-/ ++ ? $str ++ : join '-', unpack('A8 A4 A4 A4 A12', $str) + ); + return $uuid->export('bin'); + } +--- a/perl/uuid_compat.ts ++++ b/perl/uuid_compat.ts +@@ -28,7 +28,7 @@ + ## uuid_compat.ts: Data::UUID Backward Compatibility Perl API (Perl test suite part) + ## + +-use Test::More tests => 14; ++use Test::More tests => 16; + + BEGIN { + use_ok('Data::UUID'); +@@ -53,3 +53,5 @@ + ok($uuid8 = $ug->from_string("6ba7b811-9dad-11d1-80b4-00c04fd430c8")); + ok($ug->compare($uuid7, $uuid8) == 0); + ++ok($uuid9 = $ug->from_string("6ba7b8119dad11d180b400c04fd430c8")); ++ok($ug->compare($uuid7, $uuid9) == 0); diff --git a/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch b/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch new file mode 100644 index 0000000..97daca4 --- /dev/null +++ b/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch @@ -0,0 +1,24 @@ +Remove hardcoded libtool name, fall back to generated name + +Signed-off-by: Mark Hatle + +diff -ur uuid-1.6.2.orig/Makefile.in uuid-1.6.2/Makefile.in +--- uuid-1.6.2.orig/Makefile.in 2012-05-14 14:37:19.579672930 -0500 ++++ uuid-1.6.2/Makefile.in 2012-05-14 14:37:49.112733787 -0500 +@@ -32,6 +32,7 @@ + VPATH = @srcdir@ + srcdir = @srcdir@ + top_srcdir = @top_srcdir@ ++top_builddir = @top_builddir@ + S = $(srcdir) + C = . + +@@ -55,7 +56,7 @@ + CP = cp + RMDIR = rmdir + SHTOOL = $(S)/shtool +-LIBTOOL = $(C)/libtool ++LIBTOOL = @LIBTOOL@ + TRUE = true + POD2MAN = pod2man + PERL = @PERL@ diff --git a/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch b/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch new file mode 100644 index 0000000..78f3c94 --- /dev/null +++ b/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch @@ -0,0 +1,16 @@ +We don't want anything stripped + +Signed-off-by: Mark Hatle + +diff -ur uuid-1.6.2.orig/Makefile.in uuid-1.6.2/Makefile.in +--- uuid-1.6.2.orig/Makefile.in 2012-05-14 14:42:42.225789456 -0500 ++++ uuid-1.6.2/Makefile.in 2012-05-14 15:03:03.119733400 -0500 +@@ -254,7 +254,7 @@ + -@if [ ".$(WITH_CXX)" = .yes ]; then \ + $(LIBTOOL) --mode=install $(SHTOOL) install -c -m 644 $(CXX_NAME) $(DESTDIR)$(libdir)/; \ + fi +- @$(LIBTOOL) --mode=install $(SHTOOL) install -c -s -m 755 uuid $(DESTDIR)$(bindir)/ ++ @$(LIBTOOL) --mode=install $(SHTOOL) install -c -m 755 uuid $(DESTDIR)$(bindir)/ + $(SHTOOL) install -c -m 644 $(S)/uuid.1 $(DESTDIR)$(mandir)/man1/ + -@if [ ".$(WITH_PERL)" = .yes ]; then \ + (cd $(S)/perl && $(MAKE) $(MFLAGS) install DESTDIR=$(DESTDIR)); \ diff --git a/meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb b/meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb new file mode 100644 index 0000000..cc1ec75 --- /dev/null +++ b/meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb @@ -0,0 +1,58 @@ +SUMMARY = "Universally Unique Identifier (UUID) library" +DESCRIPTION = "OSSP uuid is a ISO-C:1999 application programming interface \ +(API) and corresponding command line interface (CLI) for the generation of \ +DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant Universally Unique \ +Identifier (UUID). It supports DCE 1.1 variant UUIDs of version 1 (time \ +and node based), version 3 (name based, MD5), version 4 (random number \ +based) and version 5 (name based, SHA-1)." +DESCRIPTION_uuid = "This package contains a tool to create Universally \ +Unique Identifiers (UUID) from the command-line." + +HOMEPAGE = "http://www.ossp.org/pkg/lib/uuid/" +SECTION = "libs" + +LICENSE = "ossp_uuid" +LIC_FILES_CHKSUM = "file://README;beginline=30;endline=55;md5=b394fadb039bbfca6ad9d9d769ee960e" + +PR = "r0" + +SRC_URI = "ftp://ftp.ossp.org/pkg/lib/uuid/uuid-1.6.2.tar.gz \ + file://0001-Change-library-name.patch \ + file://0002-uuid-preserve-m-option-status-in-v-option-handling.patch \ + file://0003-Fix-whatis-entries.patch \ + file://0004-fix-data-uuid-from-string.patch \ + file://uuid-libtool.patch \ + file://uuid-nostrip.patch \ + " +SRC_URI[md5sum] = "5db0d43a9022a6ebbbc25337ae28942f" +SRC_URI[sha256sum] = "11a615225baa5f8bb686824423f50e4427acd3f70d394765bdff32801f0fd5b0" + +S = "${WORKDIR}/uuid-${PV}" + +inherit autotools + +EXTRA_OECONF = "--without-dce --without-cxx --without-perl --without-perl-compat --without-php --without-pgsql" +EXTRA_OECONF = "--includedir=${includedir}/ossp" + +do_configure_prepend() { + # This package has a completely custom aclocal.m4 + # so we need to back it up and make it usable... + if [ ! -e m4/ossp.m4 ]; then + mkdir m4 + mv aclocal.m4 m4/ossp.m4 + fi + + rm -f libtool.m4 +} + +do_install_append() { + mkdir -p ${D}${includedir}/ossp + mv ${D}${libdir}/pkgconfig/uuid.pc ${D}${libdir}/pkgconfig/ossp-uuid.pc +} + +PACKAGES =+ "uuid" +FILES_uuid = "${bindir}/uuid" +FILES_${PN} = "${libdir}/libossp-uuid.so.16*" +FILES_${PN}-dev += "${bindir}/uuid-config" + +BBCLASSEXTEND = "native" -- cgit v1.1