All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-mingw] [PATCH] mingw-libgnurx: Add recipe
@ 2021-05-04 17:59 Khem Raj
  2021-05-04 18:06 ` Joshua Watt
  0 siblings, 1 reply; 3+ messages in thread
From: Khem Raj @ 2021-05-04 17:59 UTC (permalink / raw)
  To: yocto; +Cc: jpewhacker, Khem Raj

This implements glibc regex and will be used by many
packages e.g. flex, therefore add recipe

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...onor-DESTDIR-variable-during-install.patch |  39 ++++++
 .../0002-Add-autotool-files.patch             | 125 ++++++++++++++++++
 .../mingw-libgnurx/mingw-libgnurx_2.5.1.bb    |  20 +++
 3 files changed, 184 insertions(+)
 create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
 create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
 create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb

diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch b/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
new file mode 100644
index 0000000..ea8d9ed
--- /dev/null
+++ b/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
@@ -0,0 +1,39 @@
+From a9b7e07a8ba9c390d9774daae769748a09d409ce Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 1 May 2021 14:41:21 -0700
+Subject: [PATCH] Honor DESTDIR variable during install
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.in | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 6397bf1..8395d2f 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -78,16 +78,16 @@ gnurx.lib: libgnurx-$(DLLVERSION).dll
+ install: install-dll @install_dev@
+ 
+ install-dll:
+-	mkdir -p ${bindir}
+-	cp -p $(BINDIST_FILES) ${bindir}
++	mkdir -p $(DESTDIR)${bindir}
++	cp -p $(BINDIST_FILES) $(DESTDIR)${bindir}
+ 
+ install-dev:
+-	mkdir -p ${includedir} ${libdir}
+-	cp -p ${srcdir}/regex.h ${includedir}
+-	cp -p $(DEVDIST_FILES) ${libdir}
++	mkdir -p ${includedir} $(DESTDIR)${libdir}
++	cp -p ${srcdir}/regex.h $(DESTDIR)${includedir}
++	cp -p $(DEVDIST_FILES) $(DESTDIR)${libdir}
+ 	for s in 3 7; do \
+-	  mkdir -p ${mandir}/man$$s; \
+-	  gzip -c ${srcdir}/regex.$$s > ${mandir}/man$$s/regex.$$s.gz; \
++	  mkdir -p $(DESTDIR)${mandir}/man$$s; \
++	  gzip -c ${srcdir}/regex.$$s > $(DESTDIR)${mandir}/man$$s/regex.$$s.gz; \
+ 	done
+ 
+ dist:	 bindist devdist srcdist
diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch b/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
new file mode 100644
index 0000000..1365f24
--- /dev/null
+++ b/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
@@ -0,0 +1,125 @@
+From 0b74bbc32c4acf5b67d7568a5d1e776fe6578202 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 1 May 2021 14:53:09 -0700
+Subject: [PATCH] Add autotool files
+
+This helps in reconfiguring the component with autotools on Linux
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.am  |  7 ++++
+ configure.ac | 90 ++++++----------------------------------------------
+ 2 files changed, 16 insertions(+), 81 deletions(-)
+ create mode 100644 Makefile.am
+
+diff --git a/Makefile.am b/Makefile.am
+new file mode 100644
+index 0000000..be0a797
+--- /dev/null
++++ b/Makefile.am
+@@ -0,0 +1,7 @@
++lib_LTLIBRARIES = libgnurx.la
++ 
++libgnurx_la_SOURCES = regex.c
++libgnurx_la_includedir = $(includedir)
++libgnurx_la_include_HEADERS = regex.h
++libgnurx_la_CFLAGS = -I$(top_srcdir)
++libgnurx_la_LDFLAGS = -no-undefined -version-info 0:0:0 -export-dynamic
+diff --git a/configure.ac b/configure.ac
+index c97738d..de64f75 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,83 +1,11 @@
+ # configure.ac  -*- Autoconf -*-
+ # Process this file with autoconf, to generate a configure script.
+-#
+-# $Id: configure.ac,v 1.2 2007/05/03 22:46:09 keithmarshall Exp $
+-#
+-# Copyright (C) 2007, MinGW Project
+-# Written by Keith Marshall <keithmarshall@users.sourceforge.net>
+-#
+-# Package identification.
+-#
+-# This is configure.ac for the MinGW `libgnurx' package.
+-# BASENAME, VERSION_MAJOR and VERSION_MINOR are required tags;
+-# complete `Value' fields as appropriate.
+-#
+-#                            Tag              Value
+-#                            ---------------  ----------
+-  MINGW_AC_DEFINE_PACKAGE_ID([BASENAME],      [libgnurx])
+-  MINGW_AC_DEFINE_PACKAGE_ID([VERSION_MAJOR], [2])
+-  MINGW_AC_DEFINE_PACKAGE_ID([VERSION_MINOR], [5])
+-#
+-# PATCHLEVEL is optional; comment/uncomment and adjust as required.
+-#
+-  MINGW_AC_DEFINE_PACKAGE_ID([PATCHLEVEL],    [1])
+-#
+-# DLL_VERSION is required; installed DLLs will be versioned, by
+-# appending a hyphen, the specified tag value, and then the `.dll'
+-# file name extension, to the base name of each generated DLL.
+-#
+-  MINGW_AC_DEFINE_PACKAGE_ID([DLL_VERSION],   [0])
+-#
+-#
+-# libgnurx is an adaptation of Tor Lillqvist's original port of the
+-# regex functions from GNU libc, for use on native Woe32 platforms.
+-#
+-# The original sources, on which this port is based, remain copyright
+-# of their respective authors, or of the Free Software Foundation Inc.,
+-# as indicated in individual file headers; all are redistributed with
+-# permission, as granted by the GNU Lesser General Public License.
+-#
+-# This is free software.  It is provided AS IS, in the hope that it may
+-# be useful, but WITHOUT WARRANTY OF ANY KIND, not even an IMPLIED WARRANTY
+-# of MERCHANTABILITY, nor of FITNESS FOR ANY PARTICULAR PURPOSE.
+-#
+-# Permission is granted to redistribute this software, either "as is" or
+-# in modified form, under the terms of the GNU Lesser General Public License,
+-# as published by the Free Software Foundation; either version 2.1, or (at
+-# your option) any later version.
+-#
+-# You should have received a copy of the GNU Lesser General Public License
+-# along with this software; see the file COPYING.LIB.  If not, write to the
+-# Free Software Foundation, 51 Franklin St - Fifth Floor, Boston,
+-# MA 02110-1301, USA.
+-
+-# Autoconf initialisation.
+-#
+-  AC_PREREQ([2.59])
+-  AC_INIT(__MINGW_AC_PACKAGE_IDENTIFICATION__)
+-
+-# Compiler and build tool checks.
+-#
+-  AC_PROG_CC
+-  MINGW_AC_PROG_CC_OPTIONS([CC_QUALIFIED], [-m], [threads tune=pentium3])
+-
+-# Set the release version for the resultant DLL.
+-#
+-  AC_SUBST([DLLVERSION], [__MINGW_AC_PACKAGE_DLL_VERSION__])
+-
+-# User configuration options.
+-#
+-  MINGW_AC_DISTRIBUTION_TYPE([tar])
+-  MINGW_AC_MSVC_IMPORT_LIBS([GNURX_LIB], [gnurx.lib])
+-  MINGW_AC_DEV_INSTALL_OPTION
+-
+-# Configuration output.
+-#
+-  AC_SUBST([GNURX_LIB])
+-  AC_SUBST([CC_QUALIFIED], ["$CC $CC_QUALIFIED"])
+-  LDFLAGS="$LDFLAGS -Wl,--enable-auto-image-base -Wl,--out-implib,libgnurx.dll.a"
+-  test -n "${GNURX_LIB}" && LDFLAGS="$LDFLAGS -Wl,--output-def,libgnurx.def"
+-  AC_CONFIG_FILES([Makefile])
+-  AC_OUTPUT
+-#
+-# $RCSfile: configure.ac,v $Revision: 1.2 $: end of file
++ 
++AC_INIT(libgnurx, 2.5.1)
++AM_INIT_AUTOMAKE(foreign)
++AC_PROG_INSTALL
++AC_LIBTOOL_DLOPEN
++AC_LIBTOOL_WIN32_DLL
++AC_PROG_LIBTOOL
++ 
++AC_OUTPUT([Makefile])
diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb b/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb
new file mode 100644
index 0000000..cb5cd7f
--- /dev/null
+++ b/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb
@@ -0,0 +1,20 @@
+# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff"
+
+SRC_URI = "http://download.sourceforge.net/mingw/Other/UserContributed/regex/mingw-regex-${PV}/mingw-libgnurx-${PV}-src.tar.gz \
+           file://0001-Honor-DESTDIR-variable-during-install.patch \
+           file://0002-Add-autotool-files.patch \
+           "
+SRC_URI[sha256sum] = "7147b7f806ec3d007843b38e19f42a5b7c65894a57ffc297a76b0dcd5f675d76"
+
+# NOTE: if this software is not capable of being built in a separate build directory
+# from the source, you should replace autotools with autotools-brokensep in the
+# inherit line
+inherit autotools
+
+# Specify any options you want to pass to the configure script using EXTRA_OECONF:
+EXTRA_OECONF = ""
+
+BBCLASSEXTEND = "nativesdk"
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [meta-mingw] [PATCH] mingw-libgnurx: Add recipe
  2021-05-04 17:59 [meta-mingw] [PATCH] mingw-libgnurx: Add recipe Khem Raj
@ 2021-05-04 18:06 ` Joshua Watt
  2021-05-04 18:14   ` Khem Raj
  0 siblings, 1 reply; 3+ messages in thread
From: Joshua Watt @ 2021-05-04 18:06 UTC (permalink / raw)
  To: Khem Raj, yocto


On 5/4/21 12:59 PM, Khem Raj wrote:
> This implements glibc regex and will be used by many
> packages e.g. flex, therefore add recipe
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>   ...onor-DESTDIR-variable-during-install.patch |  39 ++++++
>   .../0002-Add-autotool-files.patch             | 125 ++++++++++++++++++
>   .../mingw-libgnurx/mingw-libgnurx_2.5.1.bb    |  20 +++
>   3 files changed, 184 insertions(+)
>   create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
>   create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
>   create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb
>
> diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch b/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
> new file mode 100644
> index 0000000..ea8d9ed
> --- /dev/null
> +++ b/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
> @@ -0,0 +1,39 @@
> +From a9b7e07a8ba9c390d9774daae769748a09d409ce Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com>
> +Date: Sat, 1 May 2021 14:41:21 -0700
> +Subject: [PATCH] Honor DESTDIR variable during install
> +
> +Upstream-Status: Pending
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +---
> + Makefile.in | 14 +++++++-------
> + 1 file changed, 7 insertions(+), 7 deletions(-)
> +
> +diff --git a/Makefile.in b/Makefile.in
> +index 6397bf1..8395d2f 100644
> +--- a/Makefile.in
> ++++ b/Makefile.in
> +@@ -78,16 +78,16 @@ gnurx.lib: libgnurx-$(DLLVERSION).dll
> + install: install-dll @install_dev@
> +
> + install-dll:
> +-	mkdir -p ${bindir}
> +-	cp -p $(BINDIST_FILES) ${bindir}
> ++	mkdir -p $(DESTDIR)${bindir}
> ++	cp -p $(BINDIST_FILES) $(DESTDIR)${bindir}
> +
> + install-dev:
> +-	mkdir -p ${includedir} ${libdir}
> +-	cp -p ${srcdir}/regex.h ${includedir}
> +-	cp -p $(DEVDIST_FILES) ${libdir}
> ++	mkdir -p ${includedir} $(DESTDIR)${libdir}
> ++	cp -p ${srcdir}/regex.h $(DESTDIR)${includedir}
> ++	cp -p $(DEVDIST_FILES) $(DESTDIR)${libdir}
> + 	for s in 3 7; do \
> +-	  mkdir -p ${mandir}/man$$s; \
> +-	  gzip -c ${srcdir}/regex.$$s > ${mandir}/man$$s/regex.$$s.gz; \
> ++	  mkdir -p $(DESTDIR)${mandir}/man$$s; \
> ++	  gzip -c ${srcdir}/regex.$$s > $(DESTDIR)${mandir}/man$$s/regex.$$s.gz; \
> + 	done
> +
> + dist:	 bindist devdist srcdist
> diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch b/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
> new file mode 100644
> index 0000000..1365f24
> --- /dev/null
> +++ b/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
> @@ -0,0 +1,125 @@
> +From 0b74bbc32c4acf5b67d7568a5d1e776fe6578202 Mon Sep 17 00:00:00 2001
> +From: Khem Raj <raj.khem@gmail.com>
> +Date: Sat, 1 May 2021 14:53:09 -0700
> +Subject: [PATCH] Add autotool files
> +
> +This helps in reconfiguring the component with autotools on Linux
> +
> +Upstream-Status: Pending
> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +---
> + Makefile.am  |  7 ++++
> + configure.ac | 90 ++++++----------------------------------------------
> + 2 files changed, 16 insertions(+), 81 deletions(-)
> + create mode 100644 Makefile.am
> +
> +diff --git a/Makefile.am b/Makefile.am
> +new file mode 100644
> +index 0000000..be0a797
> +--- /dev/null
> ++++ b/Makefile.am
> +@@ -0,0 +1,7 @@
> ++lib_LTLIBRARIES = libgnurx.la
> ++
> ++libgnurx_la_SOURCES = regex.c
> ++libgnurx_la_includedir = $(includedir)
> ++libgnurx_la_include_HEADERS = regex.h
> ++libgnurx_la_CFLAGS = -I$(top_srcdir)
> ++libgnurx_la_LDFLAGS = -no-undefined -version-info 0:0:0 -export-dynamic
> +diff --git a/configure.ac b/configure.ac
> +index c97738d..de64f75 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -1,83 +1,11 @@
> + # configure.ac  -*- Autoconf -*-
> + # Process this file with autoconf, to generate a configure script.
> +-#
> +-# $Id: configure.ac,v 1.2 2007/05/03 22:46:09 keithmarshall Exp $
> +-#
> +-# Copyright (C) 2007, MinGW Project
> +-# Written by Keith Marshall <keithmarshall@users.sourceforge.net>
> +-#
> +-# Package identification.
> +-#
> +-# This is configure.ac for the MinGW `libgnurx' package.
> +-# BASENAME, VERSION_MAJOR and VERSION_MINOR are required tags;
> +-# complete `Value' fields as appropriate.
> +-#
> +-#                            Tag              Value
> +-#                            ---------------  ----------
> +-  MINGW_AC_DEFINE_PACKAGE_ID([BASENAME],      [libgnurx])
> +-  MINGW_AC_DEFINE_PACKAGE_ID([VERSION_MAJOR], [2])
> +-  MINGW_AC_DEFINE_PACKAGE_ID([VERSION_MINOR], [5])
> +-#
> +-# PATCHLEVEL is optional; comment/uncomment and adjust as required.
> +-#
> +-  MINGW_AC_DEFINE_PACKAGE_ID([PATCHLEVEL],    [1])
> +-#
> +-# DLL_VERSION is required; installed DLLs will be versioned, by
> +-# appending a hyphen, the specified tag value, and then the `.dll'
> +-# file name extension, to the base name of each generated DLL.
> +-#
> +-  MINGW_AC_DEFINE_PACKAGE_ID([DLL_VERSION],   [0])
> +-#
> +-#
> +-# libgnurx is an adaptation of Tor Lillqvist's original port of the
> +-# regex functions from GNU libc, for use on native Woe32 platforms.
> +-#
> +-# The original sources, on which this port is based, remain copyright
> +-# of their respective authors, or of the Free Software Foundation Inc.,
> +-# as indicated in individual file headers; all are redistributed with
> +-# permission, as granted by the GNU Lesser General Public License.
> +-#
> +-# This is free software.  It is provided AS IS, in the hope that it may
> +-# be useful, but WITHOUT WARRANTY OF ANY KIND, not even an IMPLIED WARRANTY
> +-# of MERCHANTABILITY, nor of FITNESS FOR ANY PARTICULAR PURPOSE.
> +-#
> +-# Permission is granted to redistribute this software, either "as is" or
> +-# in modified form, under the terms of the GNU Lesser General Public License,
> +-# as published by the Free Software Foundation; either version 2.1, or (at
> +-# your option) any later version.
> +-#
> +-# You should have received a copy of the GNU Lesser General Public License
> +-# along with this software; see the file COPYING.LIB.  If not, write to the
> +-# Free Software Foundation, 51 Franklin St - Fifth Floor, Boston,
> +-# MA 02110-1301, USA.
> +-
> +-# Autoconf initialisation.
> +-#
> +-  AC_PREREQ([2.59])
> +-  AC_INIT(__MINGW_AC_PACKAGE_IDENTIFICATION__)
> +-
> +-# Compiler and build tool checks.
> +-#
> +-  AC_PROG_CC
> +-  MINGW_AC_PROG_CC_OPTIONS([CC_QUALIFIED], [-m], [threads tune=pentium3])
> +-
> +-# Set the release version for the resultant DLL.
> +-#
> +-  AC_SUBST([DLLVERSION], [__MINGW_AC_PACKAGE_DLL_VERSION__])
> +-
> +-# User configuration options.
> +-#
> +-  MINGW_AC_DISTRIBUTION_TYPE([tar])
> +-  MINGW_AC_MSVC_IMPORT_LIBS([GNURX_LIB], [gnurx.lib])
> +-  MINGW_AC_DEV_INSTALL_OPTION
> +-
> +-# Configuration output.
> +-#
> +-  AC_SUBST([GNURX_LIB])
> +-  AC_SUBST([CC_QUALIFIED], ["$CC $CC_QUALIFIED"])
> +-  LDFLAGS="$LDFLAGS -Wl,--enable-auto-image-base -Wl,--out-implib,libgnurx.dll.a"
> +-  test -n "${GNURX_LIB}" && LDFLAGS="$LDFLAGS -Wl,--output-def,libgnurx.def"
> +-  AC_CONFIG_FILES([Makefile])
> +-  AC_OUTPUT
> +-#
> +-# $RCSfile: configure.ac,v $Revision: 1.2 $: end of file
> ++
> ++AC_INIT(libgnurx, 2.5.1)
> ++AM_INIT_AUTOMAKE(foreign)
> ++AC_PROG_INSTALL
> ++AC_LIBTOOL_DLOPEN
> ++AC_LIBTOOL_WIN32_DLL
> ++AC_PROG_LIBTOOL
> ++
> ++AC_OUTPUT([Makefile])
> diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb b/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb
> new file mode 100644
> index 0000000..cb5cd7f
> --- /dev/null
> +++ b/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb
> @@ -0,0 +1,20 @@
> +# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
> +# Released under the MIT license (see COPYING.MIT for the terms)
> +LICENSE = "LGPLv2.1"
> +LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff"
> +
Is there some PROVIDES that this should have? How will recipes pull it 
in as a dependency?
> +SRC_URI = "http://download.sourceforge.net/mingw/Other/UserContributed/regex/mingw-regex-${PV}/mingw-libgnurx-${PV}-src.tar.gz \
> +           file://0001-Honor-DESTDIR-variable-during-install.patch \
> +           file://0002-Add-autotool-files.patch \
> +           "
> +SRC_URI[sha256sum] = "7147b7f806ec3d007843b38e19f42a5b7c65894a57ffc297a76b0dcd5f675d76"
> +
> +# NOTE: if this software is not capable of being built in a separate build directory
> +# from the source, you should replace autotools with autotools-brokensep in the
> +# inherit line

Probably don't need this comment?

> +inherit autotools
> +
> +# Specify any options you want to pass to the configure script using EXTRA_OECONF:
> +EXTRA_OECONF = ""
> +
> +BBCLASSEXTEND = "nativesdk"

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [meta-mingw] [PATCH] mingw-libgnurx: Add recipe
  2021-05-04 18:06 ` Joshua Watt
@ 2021-05-04 18:14   ` Khem Raj
  0 siblings, 0 replies; 3+ messages in thread
From: Khem Raj @ 2021-05-04 18:14 UTC (permalink / raw)
  To: Joshua Watt; +Cc: Yocto-mailing-list

On Tue, May 4, 2021 at 11:06 AM Joshua Watt <jpewhacker@gmail.com> wrote:
>
>
> On 5/4/21 12:59 PM, Khem Raj wrote:
> > This implements glibc regex and will be used by many
> > packages e.g. flex, therefore add recipe
> >
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > ---
> >   ...onor-DESTDIR-variable-during-install.patch |  39 ++++++
> >   .../0002-Add-autotool-files.patch             | 125 ++++++++++++++++++
> >   .../mingw-libgnurx/mingw-libgnurx_2.5.1.bb    |  20 +++
> >   3 files changed, 184 insertions(+)
> >   create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
> >   create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
> >   create mode 100644 recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb
> >
> > diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch b/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
> > new file mode 100644
> > index 0000000..ea8d9ed
> > --- /dev/null
> > +++ b/recipes-support/mingw-libgnurx/mingw-libgnurx/0001-Honor-DESTDIR-variable-during-install.patch
> > @@ -0,0 +1,39 @@
> > +From a9b7e07a8ba9c390d9774daae769748a09d409ce Mon Sep 17 00:00:00 2001
> > +From: Khem Raj <raj.khem@gmail.com>
> > +Date: Sat, 1 May 2021 14:41:21 -0700
> > +Subject: [PATCH] Honor DESTDIR variable during install
> > +
> > +Upstream-Status: Pending
> > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > +---
> > + Makefile.in | 14 +++++++-------
> > + 1 file changed, 7 insertions(+), 7 deletions(-)
> > +
> > +diff --git a/Makefile.in b/Makefile.in
> > +index 6397bf1..8395d2f 100644
> > +--- a/Makefile.in
> > ++++ b/Makefile.in
> > +@@ -78,16 +78,16 @@ gnurx.lib: libgnurx-$(DLLVERSION).dll
> > + install: install-dll @install_dev@
> > +
> > + install-dll:
> > +-    mkdir -p ${bindir}
> > +-    cp -p $(BINDIST_FILES) ${bindir}
> > ++    mkdir -p $(DESTDIR)${bindir}
> > ++    cp -p $(BINDIST_FILES) $(DESTDIR)${bindir}
> > +
> > + install-dev:
> > +-    mkdir -p ${includedir} ${libdir}
> > +-    cp -p ${srcdir}/regex.h ${includedir}
> > +-    cp -p $(DEVDIST_FILES) ${libdir}
> > ++    mkdir -p ${includedir} $(DESTDIR)${libdir}
> > ++    cp -p ${srcdir}/regex.h $(DESTDIR)${includedir}
> > ++    cp -p $(DEVDIST_FILES) $(DESTDIR)${libdir}
> > +     for s in 3 7; do \
> > +-      mkdir -p ${mandir}/man$$s; \
> > +-      gzip -c ${srcdir}/regex.$$s > ${mandir}/man$$s/regex.$$s.gz; \
> > ++      mkdir -p $(DESTDIR)${mandir}/man$$s; \
> > ++      gzip -c ${srcdir}/regex.$$s > $(DESTDIR)${mandir}/man$$s/regex.$$s.gz; \
> > +     done
> > +
> > + dist:        bindist devdist srcdist
> > diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch b/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
> > new file mode 100644
> > index 0000000..1365f24
> > --- /dev/null
> > +++ b/recipes-support/mingw-libgnurx/mingw-libgnurx/0002-Add-autotool-files.patch
> > @@ -0,0 +1,125 @@
> > +From 0b74bbc32c4acf5b67d7568a5d1e776fe6578202 Mon Sep 17 00:00:00 2001
> > +From: Khem Raj <raj.khem@gmail.com>
> > +Date: Sat, 1 May 2021 14:53:09 -0700
> > +Subject: [PATCH] Add autotool files
> > +
> > +This helps in reconfiguring the component with autotools on Linux
> > +
> > +Upstream-Status: Pending
> > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > +---
> > + Makefile.am  |  7 ++++
> > + configure.ac | 90 ++++++----------------------------------------------
> > + 2 files changed, 16 insertions(+), 81 deletions(-)
> > + create mode 100644 Makefile.am
> > +
> > +diff --git a/Makefile.am b/Makefile.am
> > +new file mode 100644
> > +index 0000000..be0a797
> > +--- /dev/null
> > ++++ b/Makefile.am
> > +@@ -0,0 +1,7 @@
> > ++lib_LTLIBRARIES = libgnurx.la
> > ++
> > ++libgnurx_la_SOURCES = regex.c
> > ++libgnurx_la_includedir = $(includedir)
> > ++libgnurx_la_include_HEADERS = regex.h
> > ++libgnurx_la_CFLAGS = -I$(top_srcdir)
> > ++libgnurx_la_LDFLAGS = -no-undefined -version-info 0:0:0 -export-dynamic
> > +diff --git a/configure.ac b/configure.ac
> > +index c97738d..de64f75 100644
> > +--- a/configure.ac
> > ++++ b/configure.ac
> > +@@ -1,83 +1,11 @@
> > + # configure.ac  -*- Autoconf -*-
> > + # Process this file with autoconf, to generate a configure script.
> > +-#
> > +-# $Id: configure.ac,v 1.2 2007/05/03 22:46:09 keithmarshall Exp $
> > +-#
> > +-# Copyright (C) 2007, MinGW Project
> > +-# Written by Keith Marshall <keithmarshall@users.sourceforge.net>
> > +-#
> > +-# Package identification.
> > +-#
> > +-# This is configure.ac for the MinGW `libgnurx' package.
> > +-# BASENAME, VERSION_MAJOR and VERSION_MINOR are required tags;
> > +-# complete `Value' fields as appropriate.
> > +-#
> > +-#                            Tag              Value
> > +-#                            ---------------  ----------
> > +-  MINGW_AC_DEFINE_PACKAGE_ID([BASENAME],      [libgnurx])
> > +-  MINGW_AC_DEFINE_PACKAGE_ID([VERSION_MAJOR], [2])
> > +-  MINGW_AC_DEFINE_PACKAGE_ID([VERSION_MINOR], [5])
> > +-#
> > +-# PATCHLEVEL is optional; comment/uncomment and adjust as required.
> > +-#
> > +-  MINGW_AC_DEFINE_PACKAGE_ID([PATCHLEVEL],    [1])
> > +-#
> > +-# DLL_VERSION is required; installed DLLs will be versioned, by
> > +-# appending a hyphen, the specified tag value, and then the `.dll'
> > +-# file name extension, to the base name of each generated DLL.
> > +-#
> > +-  MINGW_AC_DEFINE_PACKAGE_ID([DLL_VERSION],   [0])
> > +-#
> > +-#
> > +-# libgnurx is an adaptation of Tor Lillqvist's original port of the
> > +-# regex functions from GNU libc, for use on native Woe32 platforms.
> > +-#
> > +-# The original sources, on which this port is based, remain copyright
> > +-# of their respective authors, or of the Free Software Foundation Inc.,
> > +-# as indicated in individual file headers; all are redistributed with
> > +-# permission, as granted by the GNU Lesser General Public License.
> > +-#
> > +-# This is free software.  It is provided AS IS, in the hope that it may
> > +-# be useful, but WITHOUT WARRANTY OF ANY KIND, not even an IMPLIED WARRANTY
> > +-# of MERCHANTABILITY, nor of FITNESS FOR ANY PARTICULAR PURPOSE.
> > +-#
> > +-# Permission is granted to redistribute this software, either "as is" or
> > +-# in modified form, under the terms of the GNU Lesser General Public License,
> > +-# as published by the Free Software Foundation; either version 2.1, or (at
> > +-# your option) any later version.
> > +-#
> > +-# You should have received a copy of the GNU Lesser General Public License
> > +-# along with this software; see the file COPYING.LIB.  If not, write to the
> > +-# Free Software Foundation, 51 Franklin St - Fifth Floor, Boston,
> > +-# MA 02110-1301, USA.
> > +-
> > +-# Autoconf initialisation.
> > +-#
> > +-  AC_PREREQ([2.59])
> > +-  AC_INIT(__MINGW_AC_PACKAGE_IDENTIFICATION__)
> > +-
> > +-# Compiler and build tool checks.
> > +-#
> > +-  AC_PROG_CC
> > +-  MINGW_AC_PROG_CC_OPTIONS([CC_QUALIFIED], [-m], [threads tune=pentium3])
> > +-
> > +-# Set the release version for the resultant DLL.
> > +-#
> > +-  AC_SUBST([DLLVERSION], [__MINGW_AC_PACKAGE_DLL_VERSION__])
> > +-
> > +-# User configuration options.
> > +-#
> > +-  MINGW_AC_DISTRIBUTION_TYPE([tar])
> > +-  MINGW_AC_MSVC_IMPORT_LIBS([GNURX_LIB], [gnurx.lib])
> > +-  MINGW_AC_DEV_INSTALL_OPTION
> > +-
> > +-# Configuration output.
> > +-#
> > +-  AC_SUBST([GNURX_LIB])
> > +-  AC_SUBST([CC_QUALIFIED], ["$CC $CC_QUALIFIED"])
> > +-  LDFLAGS="$LDFLAGS -Wl,--enable-auto-image-base -Wl,--out-implib,libgnurx.dll.a"
> > +-  test -n "${GNURX_LIB}" && LDFLAGS="$LDFLAGS -Wl,--output-def,libgnurx.def"
> > +-  AC_CONFIG_FILES([Makefile])
> > +-  AC_OUTPUT
> > +-#
> > +-# $RCSfile: configure.ac,v $Revision: 1.2 $: end of file
> > ++
> > ++AC_INIT(libgnurx, 2.5.1)
> > ++AM_INIT_AUTOMAKE(foreign)
> > ++AC_PROG_INSTALL
> > ++AC_LIBTOOL_DLOPEN
> > ++AC_LIBTOOL_WIN32_DLL
> > ++AC_PROG_LIBTOOL
> > ++
> > ++AC_OUTPUT([Makefile])
> > diff --git a/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb b/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb
> > new file mode 100644
> > index 0000000..cb5cd7f
> > --- /dev/null
> > +++ b/recipes-support/mingw-libgnurx/mingw-libgnurx_2.5.1.bb
> > @@ -0,0 +1,20 @@
> > +# Copyright (C) 2021 Khem Raj <raj.khem@gmail.com>
> > +# Released under the MIT license (see COPYING.MIT for the terms)
> > +LICENSE = "LGPLv2.1"
> > +LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff"
> > +
> Is there some PROVIDES that this should have? How will recipes pull it
> in as a dependency?

maybe nativesdk-mingw-w64-runtime package can use this as a
dependency, I did not specifically use it as I was trying to build
flex where it was needed

> > +SRC_URI = "http://download.sourceforge.net/mingw/Other/UserContributed/regex/mingw-regex-${PV}/mingw-libgnurx-${PV}-src.tar.gz \
> > +           file://0001-Honor-DESTDIR-variable-during-install.patch \
> > +           file://0002-Add-autotool-files.patch \
> > +           "
> > +SRC_URI[sha256sum] = "7147b7f806ec3d007843b38e19f42a5b7c65894a57ffc297a76b0dcd5f675d76"
> > +
> > +# NOTE: if this software is not capable of being built in a separate build directory
> > +# from the source, you should replace autotools with autotools-brokensep in the
> > +# inherit line
>
> Probably don't need this comment?

right sent a v2

>
> > +inherit autotools
> > +
> > +# Specify any options you want to pass to the configure script using EXTRA_OECONF:
> > +EXTRA_OECONF = ""
> > +
> > +BBCLASSEXTEND = "nativesdk"

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-05-04 18:14 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-04 17:59 [meta-mingw] [PATCH] mingw-libgnurx: Add recipe Khem Raj
2021-05-04 18:06 ` Joshua Watt
2021-05-04 18:14   ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.