All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-multimedia][PATCH] libmusicbrainz: Rework native and target pieces
@ 2021-05-08 14:21 Khem Raj
  2021-05-08 15:39 ` Andreas Müller
  0 siblings, 1 reply; 4+ messages in thread
From: Khem Raj @ 2021-05-08 14:21 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Khem Raj, Andreas Müller

Build the native tools via a proper native recipe
Once done this way we do not need any patches

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andreas Müller <schnitzeltony@gmail.com>
---
 .../files/allow-libdir-override.patch         | 21 ------------
 .../musicbrainz/libmusicbrainz_git.bb         | 34 +++++--------------
 2 files changed, 9 insertions(+), 46 deletions(-)
 delete mode 100644 meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch

diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch b/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
deleted file mode 100644
index db4d6e8c99..0000000000
--- a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Allow LIB_INSTALL_DIR to be set by the the cmake configure invocation.  We dont
-easily have a way of determining something that patches ${LIB_SUFFIX} so we'll
-set LIB_INSTALL_DIR.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
-
-Index: git/CMakeLists.txt
-===================================================================
---- git.orig/CMakeLists.txt
-+++ git/CMakeLists.txt
-@@ -36,7 +36,7 @@ FIND_PACKAGE(LibXml2 REQUIRED)
- SET(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
- SET(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Installation prefix for executables and object code libraries" FORCE)
- SET(BIN_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/bin CACHE PATH "Installation prefix for user executables" FORCE)
--SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries" FORCE)
-+SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries")
- SET(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include CACHE PATH "Installation prefix for C header files" FORCE)
- 
- CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/libmusicbrainz5.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libmusicbrainz5.pc)
diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
index ca9d94a19c..f5ea36da91 100644
--- a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
+++ b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
@@ -3,38 +3,22 @@ DESCRIPTION = "The MusicBrainz client is a library which can be built into other
 HOMEPAGE = "http://musicbrainz.org"
 LICENSE = "LGPLv2.1+"
 LIC_FILES_CHKSUM = "file://COPYING.txt;md5=fbc093901857fcd118f065f900982c24"
-DEPENDS = "expat libxml2 libxml2-native neon neon-native"
+DEPENDS = "expat libxml2 libxml2-native neon neon-native libmusicbrainz-native"
 
 PV = "5.1.0+git${SRCPV}"
 
-SRCREV = "44c05779dd996035758f5ec426766aeedce29cc3"
-SRC_URI = "git://github.com/metabrainz/libmusicbrainz.git \
-           file://allow-libdir-override.patch "
+SRCREV = "8be45b12a86bc0e46f2f836c8ac88e1e98d82aee"
+SRC_URI = "git://github.com/metabrainz/libmusicbrainz.git"
 
 S = "${WORKDIR}/git"
 
 inherit cmake pkgconfig
 
-do_configure_prepend() {
-    # The native build really doesn't like being rebuilt, so delete
-    # it if it's already present. Also delete all other files not
-    # known to Git to fix subsequent invocations of do_configure.
-    git clean -dfx -e /.pc/ -e /patches/ .
-    mkdir build-native
-    cd build-native
-    LDFLAGS="${BUILD_LDFLAGS}" \
-          cmake -DCMAKE_C_FLAGS=${BUILD_CFLAGS} \
-          -DCMAKE_C_COMPILER=${BUILD_CC} \
-          -DCMAKE_CXX_FLAGS=${BUILD_CXXFLAGS} \
-          -DCMAKE_CXX_COMPILER=${BUILD_CXX} \
-          -DCMAKE_EXE_LINKER_FLAGS=${BUILD_LDFLAGS} \
-          ..
-    make make-c-interface
-    cd ..
-}
+EXTRA_OECMAKE_append_class-target = " -DIMPORT_EXECUTABLES=${STAGING_LIBDIR_NATIVE}/cmake/${BPN}/ImportExecutables.cmake"
 
-EXTRA_OECMAKE = "-DLIB_INSTALL_DIR:PATH=${libdir} \
-                 -DIMPORT_EXECUTABLES=build-native/ImportExecutables.cmake"
+do_install_append_class-native() {
+    install -Dm 0644 ${B}/ImportExecutables.cmake ${D}${libdir}/cmake/${BPN}/ImportExecutables.cmake
+    sed -e "s#${B}/src/##g" ${D}${libdir}/cmake/${BPN}/ImportExecutables.cmake
+}
 
-# out-of-tree building doesn't appear to work for this package.
-B = "${S}"
+BBCLASSEXTEND = "native"
-- 
2.31.1


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

* Re: [meta-multimedia][PATCH] libmusicbrainz: Rework native and target pieces
  2021-05-08 14:21 [meta-multimedia][PATCH] libmusicbrainz: Rework native and target pieces Khem Raj
@ 2021-05-08 15:39 ` Andreas Müller
  2021-05-08 15:45   ` Khem Raj
  0 siblings, 1 reply; 4+ messages in thread
From: Andreas Müller @ 2021-05-08 15:39 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembeded-devel

On Sat, May 8, 2021 at 4:21 PM Khem Raj <raj.khem@gmail.com> wrote:
>
> Build the native tools via a proper native recipe
> Once done this way we do not need any patches
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> Cc: Andreas Müller <schnitzeltony@gmail.com>
> ---
>  .../files/allow-libdir-override.patch         | 21 ------------
>  .../musicbrainz/libmusicbrainz_git.bb         | 34 +++++--------------
>  2 files changed, 9 insertions(+), 46 deletions(-)
>  delete mode 100644 meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
>
> diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch b/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
> deleted file mode 100644
> index db4d6e8c99..0000000000
> --- a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
> +++ /dev/null
> @@ -1,21 +0,0 @@
> -Allow LIB_INSTALL_DIR to be set by the the cmake configure invocation.  We dont
> -easily have a way of determining something that patches ${LIB_SUFFIX} so we'll
> -set LIB_INSTALL_DIR.
> -
> -Upstream-Status: Inappropriate [configuration]
> -
> -Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
> -
> -Index: git/CMakeLists.txt
> -===================================================================
> ---- git.orig/CMakeLists.txt
> -+++ git/CMakeLists.txt
> -@@ -36,7 +36,7 @@ FIND_PACKAGE(LibXml2 REQUIRED)
> - SET(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
> - SET(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Installation prefix for executables and object code libraries" FORCE)
> - SET(BIN_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/bin CACHE PATH "Installation prefix for user executables" FORCE)
> --SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries" FORCE)
> -+SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries")
> - SET(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include CACHE PATH "Installation prefix for C header files" FORCE)
> -
> - CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/libmusicbrainz5.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libmusicbrainz5.pc)
> diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
> index ca9d94a19c..f5ea36da91 100644
> --- a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
> +++ b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
> @@ -3,38 +3,22 @@ DESCRIPTION = "The MusicBrainz client is a library which can be built into other
>  HOMEPAGE = "http://musicbrainz.org"
>  LICENSE = "LGPLv2.1+"
>  LIC_FILES_CHKSUM = "file://COPYING.txt;md5=fbc093901857fcd118f065f900982c24"
> -DEPENDS = "expat libxml2 libxml2-native neon neon-native"
> +DEPENDS = "expat libxml2 libxml2-native neon neon-native libmusicbrainz-native"
>
>  PV = "5.1.0+git${SRCPV}"
>
> -SRCREV = "44c05779dd996035758f5ec426766aeedce29cc3"
> -SRC_URI = "git://github.com/metabrainz/libmusicbrainz.git \
> -           file://allow-libdir-override.patch "
> +SRCREV = "8be45b12a86bc0e46f2f836c8ac88e1e98d82aee"
^ This was not mentioned in description. Is PV still valid?

Cheers

Andreas

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

* Re: [meta-multimedia][PATCH] libmusicbrainz: Rework native and target pieces
  2021-05-08 15:39 ` Andreas Müller
@ 2021-05-08 15:45   ` Khem Raj
  0 siblings, 0 replies; 4+ messages in thread
From: Khem Raj @ 2021-05-08 15:45 UTC (permalink / raw)
  To: Andreas Müller; +Cc: openembeded-devel

Hi Andreas

On Sat, May 8, 2021 at 8:40 AM Andreas Müller <schnitzeltony@gmail.com> wrote:
>
> On Sat, May 8, 2021 at 4:21 PM Khem Raj <raj.khem@gmail.com> wrote:
> >
> > Build the native tools via a proper native recipe
> > Once done this way we do not need any patches
> >
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > Cc: Andreas Müller <schnitzeltony@gmail.com>
> > ---
> >  .../files/allow-libdir-override.patch         | 21 ------------
> >  .../musicbrainz/libmusicbrainz_git.bb         | 34 +++++--------------
> >  2 files changed, 9 insertions(+), 46 deletions(-)
> >  delete mode 100644 meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
> >
> > diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch b/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
> > deleted file mode 100644
> > index db4d6e8c99..0000000000
> > --- a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
> > +++ /dev/null
> > @@ -1,21 +0,0 @@
> > -Allow LIB_INSTALL_DIR to be set by the the cmake configure invocation.  We dont
> > -easily have a way of determining something that patches ${LIB_SUFFIX} so we'll
> > -set LIB_INSTALL_DIR.
> > -
> > -Upstream-Status: Inappropriate [configuration]
> > -
> > -Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
> > -
> > -Index: git/CMakeLists.txt
> > -===================================================================
> > ---- git.orig/CMakeLists.txt
> > -+++ git/CMakeLists.txt
> > -@@ -36,7 +36,7 @@ FIND_PACKAGE(LibXml2 REQUIRED)
> > - SET(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
> > - SET(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Installation prefix for executables and object code libraries" FORCE)
> > - SET(BIN_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/bin CACHE PATH "Installation prefix for user executables" FORCE)
> > --SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries" FORCE)
> > -+SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries")
> > - SET(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include CACHE PATH "Installation prefix for C header files" FORCE)
> > -
> > - CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/libmusicbrainz5.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libmusicbrainz5.pc)
> > diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
> > index ca9d94a19c..f5ea36da91 100644
> > --- a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
> > +++ b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
> > @@ -3,38 +3,22 @@ DESCRIPTION = "The MusicBrainz client is a library which can be built into other
> >  HOMEPAGE = "http://musicbrainz.org"
> >  LICENSE = "LGPLv2.1+"
> >  LIC_FILES_CHKSUM = "file://COPYING.txt;md5=fbc093901857fcd118f065f900982c24"
> > -DEPENDS = "expat libxml2 libxml2-native neon neon-native"
> > +DEPENDS = "expat libxml2 libxml2-native neon neon-native libmusicbrainz-native"
> >
> >  PV = "5.1.0+git${SRCPV}"
> >
> > -SRCREV = "44c05779dd996035758f5ec426766aeedce29cc3"
> > -SRC_URI = "git://github.com/metabrainz/libmusicbrainz.git \
> > -           file://allow-libdir-override.patch "
> > +SRCREV = "8be45b12a86bc0e46f2f836c8ac88e1e98d82aee"
> ^ This was not mentioned in description. Is PV still valid?
>

yes it is still valid infact it just brings one fix
https://github.com/metabrainz/libmusicbrainz/commit/8be45b12a86bc0e46f2f836c8ac88e1e98d82aee

> Cheers
>
> Andreas

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

* [meta-multimedia][PATCH] libmusicbrainz: Rework native and target pieces
@ 2021-05-09 21:08 Khem Raj
  0 siblings, 0 replies; 4+ messages in thread
From: Khem Raj @ 2021-05-09 21:08 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Khem Raj, Andreas Müller

Build the native tools via a proper native recipe
Once done this way we do not need any patches

Bump SRCREV to latest which brings in one fix [1]

[1] https://github.com/metabrainz/libmusicbrainz/commit/8be45b12a86bc0e46f2f836c8ac88e1e98d82aee

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Andreas Müller <schnitzeltony@gmail.com>
---
v2: Improve commit msg
v3: Install native make-c-interface as well

 .../files/allow-libdir-override.patch         | 21 -----------
 .../musicbrainz/libmusicbrainz_git.bb         | 35 ++++++-------------
 2 files changed, 10 insertions(+), 46 deletions(-)
 delete mode 100644 meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch

diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch b/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
deleted file mode 100644
index db4d6e8c99..0000000000
--- a/meta-multimedia/recipes-multimedia/musicbrainz/files/allow-libdir-override.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Allow LIB_INSTALL_DIR to be set by the the cmake configure invocation.  We dont
-easily have a way of determining something that patches ${LIB_SUFFIX} so we'll
-set LIB_INSTALL_DIR.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
-
-Index: git/CMakeLists.txt
-===================================================================
---- git.orig/CMakeLists.txt
-+++ git/CMakeLists.txt
-@@ -36,7 +36,7 @@ FIND_PACKAGE(LibXml2 REQUIRED)
- SET(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
- SET(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Installation prefix for executables and object code libraries" FORCE)
- SET(BIN_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/bin CACHE PATH "Installation prefix for user executables" FORCE)
--SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries" FORCE)
-+SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries")
- SET(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include CACHE PATH "Installation prefix for C header files" FORCE)
- 
- CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/libmusicbrainz5.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libmusicbrainz5.pc)
diff --git a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
index ca9d94a19c..20f0777c35 100644
--- a/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
+++ b/meta-multimedia/recipes-multimedia/musicbrainz/libmusicbrainz_git.bb
@@ -3,38 +3,23 @@ DESCRIPTION = "The MusicBrainz client is a library which can be built into other
 HOMEPAGE = "http://musicbrainz.org"
 LICENSE = "LGPLv2.1+"
 LIC_FILES_CHKSUM = "file://COPYING.txt;md5=fbc093901857fcd118f065f900982c24"
-DEPENDS = "expat libxml2 libxml2-native neon neon-native"
+DEPENDS = "expat libxml2 libxml2-native neon neon-native libmusicbrainz-native"
 
 PV = "5.1.0+git${SRCPV}"
 
-SRCREV = "44c05779dd996035758f5ec426766aeedce29cc3"
-SRC_URI = "git://github.com/metabrainz/libmusicbrainz.git \
-           file://allow-libdir-override.patch "
+SRCREV = "8be45b12a86bc0e46f2f836c8ac88e1e98d82aee"
+SRC_URI = "git://github.com/metabrainz/libmusicbrainz.git"
 
 S = "${WORKDIR}/git"
 
 inherit cmake pkgconfig
 
-do_configure_prepend() {
-    # The native build really doesn't like being rebuilt, so delete
-    # it if it's already present. Also delete all other files not
-    # known to Git to fix subsequent invocations of do_configure.
-    git clean -dfx -e /.pc/ -e /patches/ .
-    mkdir build-native
-    cd build-native
-    LDFLAGS="${BUILD_LDFLAGS}" \
-          cmake -DCMAKE_C_FLAGS=${BUILD_CFLAGS} \
-          -DCMAKE_C_COMPILER=${BUILD_CC} \
-          -DCMAKE_CXX_FLAGS=${BUILD_CXXFLAGS} \
-          -DCMAKE_CXX_COMPILER=${BUILD_CXX} \
-          -DCMAKE_EXE_LINKER_FLAGS=${BUILD_LDFLAGS} \
-          ..
-    make make-c-interface
-    cd ..
-}
+EXTRA_OECMAKE_append_class-target = " -DIMPORT_EXECUTABLES=${STAGING_LIBDIR_NATIVE}/cmake/${BPN}/ImportExecutables.cmake"
 
-EXTRA_OECMAKE = "-DLIB_INSTALL_DIR:PATH=${libdir} \
-                 -DIMPORT_EXECUTABLES=build-native/ImportExecutables.cmake"
+do_install_append_class-native() {
+    install -Dm 0755 ${B}/src/make-c-interface ${D}${bindir}/make-c-interface
+    install -Dm 0644 ${B}/ImportExecutables.cmake ${D}${libdir}/cmake/${BPN}/ImportExecutables.cmake
+    sed -e "s#${B}/src/##g" ${D}${libdir}/cmake/${BPN}/ImportExecutables.cmake
+}
 
-# out-of-tree building doesn't appear to work for this package.
-B = "${S}"
+BBCLASSEXTEND = "native"
-- 
2.31.1


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

end of thread, other threads:[~2021-05-09 21:08 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-08 14:21 [meta-multimedia][PATCH] libmusicbrainz: Rework native and target pieces Khem Raj
2021-05-08 15:39 ` Andreas Müller
2021-05-08 15:45   ` Khem Raj
2021-05-09 21:08 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.