[OE-core] FW: [oe] [meta-oe][PATCH] parted_1.8.6.bb: add parted that not GPLv3

Lei, Maohui leimaohui at cn.fujitsu.com
Tue Jul 7 03:50:24 UTC 2015


Hello,

Can non-GPLv3 parted be added into oe-core? I think not everybody wants to use the GPLv3 version.



Cheers

Lei


> -----Original Message-----
> From: openembedded-devel-bounces at lists.openembedded.org
> [mailto:openembedded-devel-bounces at lists.openembedded.org] On Behalf Of Andre
> McCurdy
> Sent: Tuesday, July 07, 2015 6:23 AM
> To: openembedded-devel at lists.openembedded.org
> Subject: Re: [oe] [meta-oe][PATCH] parted_1.8.6.bb: add parted that not GPLv3
> 
> On Sun, Jul 5, 2015 at 6:51 PM, Lei Maohui <leimaohui at cn.fujitsu.com> wrote:
> > In oe-core,the parted is GPLv3,so add parted-1.8.6 which is not GPLv3.
> 
> Thanks, it's good to have a non-GPLv3 recipe for parted.
> 
> However, if the GPLv3 recipe is in oe-core then the non-GPLv3 version should be in
> oe-core as well, not in in meta-oe.
> 
> The reason is that recipes in meta-oe have a higher priority (BBFILE_PRIORITY == 6) than
> those in oe-core (BBFILE_PRIORITY == 5).
> Therefore if you add a parted recipe to meta-oe then it will be used by default, which will
> be wrong for anyone who wants to continue to use the GPLv3 version in oe-core.
> 
> 
> http://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#var-BBFILE_
> PRIORITY
> 
> 
> > Signed-off-by: Lei Maohui <leimaohui at cn.fujitsu.com>
> > ---
> >  .../parted-1.8.6/1000parted-1.8.6-warnings1.patch  | 11 ++++
> >  .../1001parted-1.8.6-notransname1.patch            | 39 ++++++++++++++
> >  .../1002parted-1.8.6-off-by-one1.patch             | 25 +++++++++
> >  .../1003parted-1.8.6-primary-boundary1.patch       | 12 +++++
> >  .../parted-1.8.6/1004parted-1.8.6-xvd1.patch       | 50 +++++++++++++++++
> >  .../1005parted-1.8.6-devmapper-header1.patch       | 13 +++++
> >  .../parted/parted-1.8.6/7000no_effect_macro1.patch | 11 ++++
> > .../parted/parted-1.8.6/ui.c-fix-build-error.patch | 26 +++++++++
> >  meta-oe/recipes-extended/parted/parted_1.8.6.bb    | 62
> ++++++++++++++++++++++
> >  9 files changed, 249 insertions(+)
> >  create mode 100644
> > meta-oe/recipes-extended/parted/parted-1.8.6/1000parted-1.8.6-warnings
> > 1.patch  create mode 100644
> > meta-oe/recipes-extended/parted/parted-1.8.6/1001parted-1.8.6-notransn
> > ame1.patch  create mode 100644
> > meta-oe/recipes-extended/parted/parted-1.8.6/1002parted-1.8.6-off-by-o
> > ne1.patch  create mode 100644
> > meta-oe/recipes-extended/parted/parted-1.8.6/1003parted-1.8.6-primary-
> > boundary1.patch  create mode 100644
> > meta-oe/recipes-extended/parted/parted-1.8.6/1004parted-1.8.6-xvd1.pat
> > ch  create mode 100644
> > meta-oe/recipes-extended/parted/parted-1.8.6/1005parted-1.8.6-devmappe
> > r-header1.patch  create mode 100644
> > meta-oe/recipes-extended/parted/parted-1.8.6/7000no_effect_macro1.patc
> > h  create mode 100644
> > meta-oe/recipes-extended/parted/parted-1.8.6/ui.c-fix-build-error.patc
> > h  create mode 100644 meta-oe/recipes-extended/parted/parted_1.8.6.bb
> >
> > diff --git
> > a/meta-oe/recipes-extended/parted/parted-1.8.6/1000parted-1.8.6-warnin
> > gs1.patch
> > b/meta-oe/recipes-extended/parted/parted-1.8.6/1000parted-1.8.6-warnin
> > gs1.patch
> > new file mode 100644
> > index 0000000..c8b2e7d
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted-1.8.6/1000parted-1.8.6-wa
> > +++ rnings1.patch
> > @@ -0,0 +1,11 @@
> > +--- parted-1.8.6/libparted/fs/linux_swap/linux_swap.c.warnings
> > +2007-03-20 13:22:36.000000000 -0400
> > ++++ parted-1.8.6/libparted/fs/linux_swap/linux_swap.c  2007-03-20
> > ++++ 13:59:11.000000000 -0400
> > +@@ -123,7 +123,7 @@
> > +
> > + error_close_fs:
> > +       swap_close (fs);
> > +-error:
> > ++
> > +       return 0;
> > + }
> > + #endif /* !DISCOVER_ONLY */
> > diff --git
> > a/meta-oe/recipes-extended/parted/parted-1.8.6/1001parted-1.8.6-notran
> > sname1.patch
> > b/meta-oe/recipes-extended/parted/parted-1.8.6/1001parted-1.8.6-notran
> > sname1.patch
> > new file mode 100644
> > index 0000000..5fdf10b
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted-1.8.6/1001parted-1.8.6-no
> > +++ transname1.patch
> > @@ -0,0 +1,39 @@
> > +--- parted-1.8.6/parted/parted.c.notransname   2007-03-13 13:01:09.000000000 -0400
> > ++++ parted-1.8.6/parted/parted.c       2007-03-21 10:50:35.000000000 -0400
> > +@@ -1429,7 +1429,7 @@
> > +                                              part->fs_type->name :
> > +"");
> > +
> > +                             if (has_name) {
> > +-                                    name = _(ped_partition_get_name (part));
> > ++                                    name = ped_partition_get_name
> > ++ (part);
> > +                                     str_list_append (row, name);
> > +                             }
> > +
> > +--- parted-1.8.6/parted/table.c.notransname    2007-03-13 13:01:09.000000000 -0400
> > ++++ parted-1.8.6/parted/table.c        2007-03-21 10:51:31.000000000 -0400
> > +@@ -191,7 +191,8 @@
> > +         len += wcslen(COLSUFFIX);
> > +
> > +         newsize = (wcslen(*s) + len + 1) * sizeof(wchar_t);
> > +-        *s = realloc (*s, newsize);
> > ++        *s = (wchar_t *) realloc (*s, newsize);
> > ++        assert(*s != NULL);
> > +
> > +         for (i = 0; i < ncols; ++i)
> > +         {
> > +@@ -199,6 +200,7 @@
> > +                 int nspaces = max(t->widths[i] - wcswidth(row[i], MAX_WIDTH),
> > +                                   0);
> > +                 wchar_t* pad = malloc ( (nspaces + 1) *
> > +sizeof(wchar_t) );
> > ++                assert(pad != NULL);
> > +
> > +                 for (j = 0; j < nspaces; ++j)
> > +                        pad[j] = L' '; @@ -211,6 +213,7 @@
> > +                         wcscat (*s, DELIMITER);
> > +
> > +                 free (pad);
> > ++                pad = NULL;
> > +         }
> > +
> > +         wcscat (*s, COLSUFFIX);
> > diff --git
> > a/meta-oe/recipes-extended/parted/parted-1.8.6/1002parted-1.8.6-off-by
> > -one1.patch
> > b/meta-oe/recipes-extended/parted/parted-1.8.6/1002parted-1.8.6-off-by
> > -one1.patch
> > new file mode 100644
> > index 0000000..9652a98
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted-1.8.6/1002parted-1.8.6-of
> > +++ f-by-one1.patch
> > @@ -0,0 +1,25 @@
> > +--- parted-1.8.6/parted/parted.c.offbyone      2007-04-11 12:13:06.000000000 -0400
> > ++++ parted-1.8.6/parted/parted.c       2007-04-11 12:13:21.000000000 -0400
> > +@@ -1217,6 +1217,7 @@
> > + static int
> > + do_print (PedDevice** dev)
> > + {
> > ++        PedUnit         default_unit;
> > +         PedDisk*        disk;
> > +         Table*          table;
> > +         StrList*        row;
> > +@@ -1303,11 +1304,12 @@
> > +         }
> > +
> > +         start = ped_unit_format (*dev, 0);
> > ++        default_unit = ped_unit_get_default ();
> > +         end = ped_unit_format_byte (*dev, (*dev)->length * (*dev)->sector_size
> > +-                                          - 1 );
> > ++         - (default_unit == PED_UNIT_CHS || default_unit ==
> > ++ PED_UNIT_CYLINDER));
> > +
> > +         if (opt_machine_mode) {
> > +-            switch (ped_unit_get_default ()) {
> > ++            switch (default_unit) {
> > +                 case PED_UNIT_CHS:      puts ("CHS;");
> > +                                         break;
> > +                 case PED_UNIT_CYLINDER: puts ("CYL;");
> > diff --git
> > a/meta-oe/recipes-extended/parted/parted-1.8.6/1003parted-1.8.6-primar
> > y-boundary1.patch
> > b/meta-oe/recipes-extended/parted/parted-1.8.6/1003parted-1.8.6-primar
> > y-boundary1.patch
> > new file mode 100644
> > index 0000000..0366977
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted-1.8.6/1003parted-1.8.6-pr
> > +++ imary-boundary1.patch
> > @@ -0,0 +1,12 @@
> > +--- parted-1.8.6/libparted/labels/dos.c.boundary       2007-03-13
> 13:01:09.000000000 -0400
> > ++++ parted-1.8.6/libparted/labels/dos.c        2007-04-11 14:56:54.000000000
> -0400
> > +@@ -1696,8 +1696,7 @@
> > +                                        _primary_start_constraint (disk, part,
> > +                                                bios_geom,
> > +min_geom)));
> > +
> > +-      if (!solution)
> > +-              solution = _best_solution (part, bios_geom, solution,
> > ++      solution = _best_solution (part, bios_geom, solution,
> > +                       _try_constraint (part, constraint,
> > +                               _primary_constraint (disk, bios_geom,
> > +                               min_geom)));
> > diff --git
> > a/meta-oe/recipes-extended/parted/parted-1.8.6/1004parted-1.8.6-xvd1.p
> > atch
> > b/meta-oe/recipes-extended/parted/parted-1.8.6/1004parted-1.8.6-xvd1.p
> > atch
> > new file mode 100644
> > index 0000000..17ec29a
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted-1.8.6/1004parted-1.8.6-xv
> > +++ d1.patch
> > @@ -0,0 +1,50 @@
> > +diff -up parted-1.8.6/libparted/arch/linux.c.xvd parted-1.8.6/libparted/arch/linux.c
> > +--- parted-1.8.6/libparted/arch/linux.c.xvd    2007-08-07 14:05:59.000000000 -0400
> > ++++ parted-1.8.6/libparted/arch/linux.c        2007-08-07 14:07:13.000000000 -0400
> > +@@ -248,6 +248,7 @@ struct blkdev_ioctl_param {
> > + #define VIODASD_MAJOR           112
> > + #define SX8_MAJOR1              160
> > + #define SX8_MAJOR2              161
> > ++#define XVD_MAJOR               202
> > +
> > + #define SCSI_BLK_MAJOR(M)
> (                                             \
> > +                 (M) == SCSI_DISK0_MAJOR
> \
> > +@@ -450,6 +451,8 @@ _device_probe_type (PedDevice* dev)
> > +         } else if (_is_dm_major(dev_major)) {
> > +                 dev->type = PED_DEVICE_DM;  #endif
> > ++        } else if (dev_major == XVD_MAJOR && (dev_minor % 0x10 == 0)) {
> > ++                dev->type = PED_DEVICE_XVD;
> > +         } else {
> > +                 dev->type = PED_DEVICE_UNKNOWN;
> > +         }
> > +@@ -1152,6 +1155,11 @@ linux_new (const char* path)
> > +                 break;
> > + #endif
> > +
> > ++        case PED_DEVICE_XVD:
> > ++                if (!init_generic (dev, _("Xen Virtual Block Device")))
> > ++                        goto error_free_arch_specific;
> > ++                break;
> > ++
> > +         case PED_DEVICE_UNKNOWN:
> > +                 if (!init_generic (dev, _("Unknown")))
> > +                         goto error_free_arch_specific; diff -up
> > +parted-1.8.6/include/parted/device.h.xvd parted-1.8.6/include/parted/device.h
> > +--- parted-1.8.6/include/parted/device.h.xvd   2007-01-12 10:15:10.000000000 -0500
> > ++++ parted-1.8.6/include/parted/device.h       2007-08-07 14:07:13.000000000
> -0400
> > +@@ -45,11 +45,11 @@ typedef enum {
> > +         PED_DEVICE_UBD          = 8,
> > +         PED_DEVICE_DASD         = 9,
> > +         PED_DEVICE_VIODASD      = 10,
> > +-        PED_DEVICE_SX8          = 11
> > ++        PED_DEVICE_SX8          = 11,
> > + #ifdef ENABLE_DEVICE_MAPPER
> > +-                                    ,
> > +-        PED_DEVICE_DM           = 12
> > ++        PED_DEVICE_DM           = 12,
> > + #endif
> > ++        PED_DEVICE_XVD          = 13
> > + } PedDeviceType;
> > +
> > + typedef struct _PedDevice PedDevice;
> > diff --git
> > a/meta-oe/recipes-extended/parted/parted-1.8.6/1005parted-1.8.6-devmap
> > per-header1.patch
> > b/meta-oe/recipes-extended/parted/parted-1.8.6/1005parted-1.8.6-devmap
> > per-header1.patch
> > new file mode 100644
> > index 0000000..536a20d
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted-1.8.6/1005parted-1.8.6-de
> > +++ vmapper-header1.patch
> > @@ -0,0 +1,13 @@
> > +diff -up parted-1.8.6/include/parted/device.h.devmapper
> parted-1.8.6/include/parted/device.h
> > +--- parted-1.8.6/include/parted/device.h.devmapper     2007-10-04
> 15:39:27.000000000 -0400
> > ++++ parted-1.8.6/include/parted/device.h       2007-10-04 15:40:11.000000000
> -0400
> > +@@ -46,9 +46,7 @@ typedef enum {
> > +         PED_DEVICE_DASD         = 9,
> > +         PED_DEVICE_VIODASD      = 10,
> > +         PED_DEVICE_SX8          = 11,
> > +-#ifdef ENABLE_DEVICE_MAPPER
> > +         PED_DEVICE_DM           = 12,
> > +-#endif
> > +         PED_DEVICE_XVD          = 13
> > + } PedDeviceType;
> > +
> > diff --git
> > a/meta-oe/recipes-extended/parted/parted-1.8.6/7000no_effect_macro1.pa
> > tch
> > b/meta-oe/recipes-extended/parted/parted-1.8.6/7000no_effect_macro1.pa
> > tch
> > new file mode 100644
> > index 0000000..033f3f5
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted-1.8.6/7000no_effect_macro
> > +++ 1.patch
> > @@ -0,0 +1,11 @@
> > +--- parted-1.8.6/parted/table.c        2010-11-02 13:37:16.256204798 +0900
> > ++++ parted-1.8.6/parted/table.c        2010-11-02 13:45:16.231266752 +0900
> > +@@ -43,7 +43,7 @@
> > + #       define wcslen strlen
> > + #       define wcswidth strnlen
> > + #       define wcscat strcat
> > +-#       define wcsdup strdup
> > ++/* #       define wcsdup strdup */
> > +         size_t strnlen (const char *, size_t); #endif
> > +
> > diff --git
> > a/meta-oe/recipes-extended/parted/parted-1.8.6/ui.c-fix-build-error.pa
> > tch
> > b/meta-oe/recipes-extended/parted/parted-1.8.6/ui.c-fix-build-error.pa
> > tch
> > new file mode 100644
> > index 0000000..777fe6a
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted-1.8.6/ui.c-fix-build-erro
> > +++ r.patch
> > @@ -0,0 +1,26 @@
> > +From 4f4dfd5aabdaadd8f495e193ca8daed5a3a1782a Mon Sep 17 00:00:00
> > +2001
> > +From: Li xin <lixin.fnst at cn.fujitsu.com>
> > +Date: Fri, 28 Nov 2014 02:49:19 +0900
> > +Subject: [PATCH] parted/ui.c : fix build error
> > +
> > +Signed-off-by: Li Xin <lixin.fnst at cn.fujitsu.com>
> > +---
> > + parted/ui.c | 2 +-
> > + 1 file changed, 1 insertion(+), 1 deletion(-)
> > +
> > +diff --git a/parted/ui.c b/parted/ui.c index 59cb98b..b583693 100644
> > +--- a/parted/ui.c
> > ++++ b/parted/ui.c
> > +@@ -1376,7 +1376,7 @@ init_ui ()
> > +
> > + #ifdef HAVE_LIBREADLINE
> > +         rl_initialize ();
> > +-        rl_attempted_completion_function = (CPPFunction*) complete_function;
> > ++        rl_attempted_completion_function = (rl_completion_func_t*)
> > ++ complete_function;
> > +         readline_state.in_readline = 0; #endif
> > +
> > +--
> > +1.8.4.2
> > +
> > diff --git a/meta-oe/recipes-extended/parted/parted_1.8.6.bb
> > b/meta-oe/recipes-extended/parted/parted_1.8.6.bb
> > new file mode 100644
> > index 0000000..537978f
> > --- /dev/null
> > +++ b/meta-oe/recipes-extended/parted/parted_1.8.6.bb
> > @@ -0,0 +1,62 @@
> > +SUMMARY = "The GNU disk partition manipulation program"
> > +DESCRIPTION = "The GNU Parted program allows you to create, destroy,
> > +resize, move, \ and copy hard disk partitions. Parted can be used for
> > +creating space \ for new operating systems, reorganizing disk usage,
> > +and copying data \ to new hard disks."
> > +HOMEPAGE = "http://www.gnu.org/software/parted"
> > +SECTION = "Applications/System"
> > +
> > +SRC_URI = "http://ftp.gnu.org/gnu/parted/parted-1.8.6.tar.bz2 \
> > +          file://1000parted-1.8.6-warnings1.patch \
> > +          file://1001parted-1.8.6-notransname1.patch \
> > +          file://1002parted-1.8.6-off-by-one1.patch \
> > +          file://1003parted-1.8.6-primary-boundary1.patch \
> > +          file://1004parted-1.8.6-xvd1.patch \
> > +          file://1005parted-1.8.6-devmapper-header1.patch \
> > +          file://7000no_effect_macro1.patch \
> > +           file://ui.c-fix-build-error.patch \
> > +          "
> > +
> > +SRC_URI[md5sum] = "03c967ae0e915e08da90605d68ba93d7"
> > +SRC_URI[sha256sum] =
> "82d94c9bb58cccd1eacfc5ff3a9331d179cc26d8fbe00c451e2c84feb6d23408"
> > +
> > +LICENSE = "GPLv2+"
> > +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a"
> > +
> > +inherit autotools gettext pkgconfig
> > +
> > +DEPENDS = "lvm2 readline"
> > +
> > +EXTRA_OECONF = "--enable-device-mapper \
> > +               --disable-selinux \
> > +               --disable-static \
> > +               --sbindir=${sbindir} \
> > +               --disable-Werror \
> > +               --disable-rpath \
> > +               "
> > +EXTRA_OEMAKE = "DESTDIR=${D}"
> > +
> > +do_configure_prepend() {
> > +       # ltmain.sh will set rpath to path on host.
> > +       for l in `find ${S} -name "ltmain\.sh"` ; do
> > +               sed -i -e 's/\$compile_rpath//g' \
> > +                      -e 's/\$finalize_rpath//g' ${l}
> > +       done
> > +
> > +       # FIXME: Some option may be needed by EXTRA_OECONF.
> > +       sed -i
> 's/ac_cv_func_malloc_0_nonnull=no/ac_cv_func_malloc_0_nonnull=yes/g'
> ${S}/configure
> > +       sed -i
> 's/ac_cv_func_calloc_0_nonnull=no/ac_cv_func_calloc_0_nonnull=yes/g' ${S}/configure
> > +       sed -i
> 's/ac_cv_func_memcmp_working=no/ac_cv_func_memcmp_working=yes/g'
> ${S}/configure
> > +       sed -i
> > +'s/ac_cv_func_realloc_0_nonnull=no/ac_cv_func_realloc_0_nonnull=yes/g
> > +' ${S}/configure }
> > +
> > +do_configure() {
> > +       oe_runconf
> > +}
> > +
> > +do_install_append() {
> > +       /bin/rm -rf ${D}/${libdir}/*.la
> > +       /bin/rm -rf ${D}/usr/share/info/dir
> > +       /bin/rm -fr ${D}/usr/bin
> > +}
> > +
> > --
> > 1.8.4.2
> >
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel at lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


More information about the Openembedded-core mailing list