public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-libs/lib3mf/files/, media-libs/lib3mf/
@ 2020-04-11 14:17 Andreas Sturmlechner
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Sturmlechner @ 2020-04-11 14:17 UTC (permalink / raw
  To: gentoo-commits

commit:     d63003e9ac333d54b8cb4b80d0550e2de0016468
Author:     Bernd Waibel <waebbl <AT> gmail <DOT> com>
AuthorDate: Fri May 24 07:04:08 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Apr 11 14:17:26 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d63003e9

media-libs/lib3mf: new package

Thanks to Scott Alfter who initially wrote the ebuild.

Reported-by: Scott Alfter <scott <AT> alfter.us>
Closes: https://bugs.gentoo.org/686476
Package-Manager: Portage-2.3.96-r1, Repoman-2.3.22
Signed-off-by: Bernd Waibel <waebbl <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/15269
Closes: https://github.com/gentoo/gentoo/pull/12097
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-libs/lib3mf/Manifest                         |  1 +
 ...ntoo-specific-avoid-pre-stripping-library.patch | 27 ++++++++++
 ...-1.8.1-0002-Add-library-link-dependencies.patch | 59 ++++++++++++++++++++++
 ....8.1-0003-Change-installation-include-dir.patch | 44 ++++++++++++++++
 ...4-Gentoo-specific-Remove-gtest-source-dir.patch | 35 +++++++++++++
 media-libs/lib3mf/lib3mf-1.8.1.ebuild              | 48 ++++++++++++++++++
 media-libs/lib3mf/metadata.xml                     | 21 ++++++++
 7 files changed, 235 insertions(+)

diff --git a/media-libs/lib3mf/Manifest b/media-libs/lib3mf/Manifest
new file mode 100644
index 00000000000..8e5f81cdf62
--- /dev/null
+++ b/media-libs/lib3mf/Manifest
@@ -0,0 +1 @@
+DIST lib3mf-1.8.1.tar.gz 8415939 BLAKE2B 45652aab8c84eb5d500455db211eb911c6e74decf4fbbb652976847e1b3ea16db9c626bd37cd9669aefc8dea29c424e6518e0517e8f96fa6282771e34f840290 SHA512 f7fd75bcb6472de1595a018e5add516d0d78ab0aee92462b686b77f8d2bef05270e7b737cb7e1d31fc5850815056e753874c2f9ec456a455e8461c4010fe914a

diff --git a/media-libs/lib3mf/files/lib3mf-1.8.1-0001-Gentoo-specific-avoid-pre-stripping-library.patch b/media-libs/lib3mf/files/lib3mf-1.8.1-0001-Gentoo-specific-avoid-pre-stripping-library.patch
new file mode 100644
index 00000000000..c695283cffb
--- /dev/null
+++ b/media-libs/lib3mf/files/lib3mf-1.8.1-0001-Gentoo-specific-avoid-pre-stripping-library.patch
@@ -0,0 +1,27 @@
+From d97ad4604af7998541567ec486f90dd528e839b1 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl@gmail.com>
+Date: Wed, 8 Apr 2020 19:09:42 +0200
+Subject: [PATCH 1/4] [Gentoo-specific] avoid pre-stripping library
+
+Signed-off-by: Bernd Waibel <waebbl@gmail.com>
+---
+ CMakeLists.txt | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5453440..c867224 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -104,7 +104,8 @@ if (UNIX OR MINGW)
+ 	# Uncomment the following to but the version info into the .so-file.
+ 	SET_TARGET_PROPERTIES(${PROJECT_NAME}_s PROPERTIES VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}")
+ 	SET_TARGET_PROPERTIES(${PROJECT_NAME}_s PROPERTIES SOVERSION "${PROJECT_VERSION_MAJOR}")
+-	if (NOT APPLE)
++	# avoid pre-stripping on Gentoo, this is done by emerge
++	if (NOT APPLE OR (UNIX AND NOT CMAKE_BUILD_TYPE MATCHES "Gentoo"))
+ 		SET_TARGET_PROPERTIES(${PROJECT_NAME}_s PROPERTIES LINK_FLAGS -s)
+ 	endif()
+ 	if (NOT WIN32)
+-- 
+2.26.0
+

diff --git a/media-libs/lib3mf/files/lib3mf-1.8.1-0002-Add-library-link-dependencies.patch b/media-libs/lib3mf/files/lib3mf-1.8.1-0002-Add-library-link-dependencies.patch
new file mode 100644
index 00000000000..de5331ae66e
--- /dev/null
+++ b/media-libs/lib3mf/files/lib3mf-1.8.1-0002-Add-library-link-dependencies.patch
@@ -0,0 +1,59 @@
+From 976f14e1ac26389dbfc04bcffd9f4e7e21197001 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl@gmail.com>
+Date: Wed, 8 Apr 2020 20:05:16 +0200
+Subject: [PATCH] Add library link dependencies
+
+If USE_INCLUDED_LIBZIP and/or USE_INCLUDED_ZLIB are not set
+add them to target_link_libaries command.
+
+Signed-off-by: Bernd Waibel <waebbl@gmail.com>
+---
+ CMakeLists.txt               | 10 +++++++++-
+ UnitTests/CPP/CMakeLists.txt | 10 +++++++++-
+ 2 files changed, 18 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c867224..df87806 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -130,7 +130,15 @@ add_library(${PROJECT_NAME} SHARED ${SRCS_MAIN_PLATFORM}
+ )
+ set(STARTUPPROJECT ${PROJECT_NAME})
+ SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" IMPORT_PREFIX "")
+-target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_s)
++if(USE_INCLUDED_LIBZIP AND USE_INCLUDED_ZLIB)
++	target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_s)
++elseif(USE_INCLUDED_LIBZIP AND NOT USE_INCLUDED_ZLIB)
++	target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_s z)
++elseif(USE_INCLUDED_ZLIB AND NOT USE_INCLUDED_LIBZIP)
++	target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_s zip)
++else()
++	target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_s zip z)
++endif()
+ if (UNIX OR MINGW)
+ 	# Uncomment the following to but the version info into the .so-file.
+ 	SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}.${BUILD_NUMBER}")
+diff --git a/UnitTests/CPP/CMakeLists.txt b/UnitTests/CPP/CMakeLists.txt
+index 2fdf85d..24d32bf 100644
+--- a/UnitTests/CPP/CMakeLists.txt
++++ b/UnitTests/CPP/CMakeLists.txt
+@@ -22,7 +22,15 @@ if (WIN32)
+ endif()
+ 
+ target_include_directories(${TESTNAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Include ${gtest_SOURCE_DIR}/include)
+-target_link_libraries(${TESTNAME} ${PROJECT_NAME}_s gtest gtest_main)
++if(USE_INCLUDED_LIBZIP AND USE_INCLUDED_ZLIB)
++	target_link_libraries(${TESTNAME} ${PROJECT_NAME}_s gtest gtest_main)
++elseif(USE_INCLUDED_LIBZIP AND NOT USE_INCLUDED_ZLIB)
++	target_link_libraries(${TESTNAME} ${PROJECT_NAME}_s gtest gtest_main z)
++elseif(USE_INCLUDED_ZLIB AND NOT USE_INCLUDED_LIBZIP)
++	target_link_libraries(${TESTNAME} ${PROJECT_NAME}_s gtest gtest_main zip)
++else()
++	target_link_libraries(${TESTNAME} ${PROJECT_NAME}_s gtest gtest_main zip z)
++endif()
+ add_dependencies(${TESTNAME} ${PROJECT_NAME}_s)
+ set_target_properties(${TESTNAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/")
+ 
+-- 
+2.26.0
+

diff --git a/media-libs/lib3mf/files/lib3mf-1.8.1-0003-Change-installation-include-dir.patch b/media-libs/lib3mf/files/lib3mf-1.8.1-0003-Change-installation-include-dir.patch
new file mode 100644
index 00000000000..3d79c0d4a4f
--- /dev/null
+++ b/media-libs/lib3mf/files/lib3mf-1.8.1-0003-Change-installation-include-dir.patch
@@ -0,0 +1,44 @@
+From f61a4c09977097b0d456ce9e480c2630b90cdc30 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl@gmail.com>
+Date: Wed, 8 Apr 2020 19:16:07 +0200
+Subject: [PATCH 3/4] Change installation include dir to a more specific one.
+
+Signed-off-by: Bernd Waibel <waebbl@gmail.com>
+---
+ CMakeLists.txt | 6 +++---
+ lib3MF.pc.in   | 2 +-
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index df87806..3101c65 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -148,9 +148,9 @@ install(TARGETS ${PROJECT_NAME}
+ 	ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ 	LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ 	RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
+-install(DIRECTORY Include/Model DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
+-install(DIRECTORY Include/Common DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
+-install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/Include/ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
++install(DIRECTORY Include/Model DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lib3mf")
++install(DIRECTORY Include/Common DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lib3mf")
++install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/Include/ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/lib3mf")
+ 
+ #########################################################
+ configure_file(lib3MF.pc.in lib3MF.pc @ONLY)
+diff --git a/lib3MF.pc.in b/lib3MF.pc.in
+index 9afb6ee..cf8cafb 100644
+--- a/lib3MF.pc.in
++++ b/lib3MF.pc.in
+@@ -1,7 +1,7 @@
+ prefix=@CMAKE_INSTALL_PREFIX@
+ exec_prefix=@CMAKE_INSTALL_PREFIX@
+ libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
+-includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/lib3mf
+ 
+ Name: @PROJECT_NAME@
+ Description: @PROJECT_DESCRIPTION@
+-- 
+2.26.0
+

diff --git a/media-libs/lib3mf/files/lib3mf-1.8.1-0004-Gentoo-specific-Remove-gtest-source-dir.patch b/media-libs/lib3mf/files/lib3mf-1.8.1-0004-Gentoo-specific-Remove-gtest-source-dir.patch
new file mode 100644
index 00000000000..edc202e8303
--- /dev/null
+++ b/media-libs/lib3mf/files/lib3mf-1.8.1-0004-Gentoo-specific-Remove-gtest-source-dir.patch
@@ -0,0 +1,35 @@
+From f392342f819b59449228100b7de8c14eda3cc391 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl@gmail.com>
+Date: Wed, 8 Apr 2020 19:55:40 +0200
+Subject: [PATCH] [Gentoo-specific] Remove gtest source dir
+
+We use system gtest on Gentoo
+
+Signed-off-by: Bernd Waibel <waebbl@gmail.com>
+---
+ UnitTests/CMakeLists.txt | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/UnitTests/CMakeLists.txt b/UnitTests/CMakeLists.txt
+index 59ae773..1212228 100644
+--- a/UnitTests/CMakeLists.txt
++++ b/UnitTests/CMakeLists.txt
+@@ -1,7 +1,5 @@
+-ADD_SUBDIRECTORY (googletest EXCLUDE_FROM_ALL)
+ enable_testing()
+-	
+-SET(gtest_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/googletest/googletest")
++
+ add_definitions( -DTESTFILESPATH="${CMAKE_CURRENT_SOURCE_DIR}/../TestFiles")
+ add_definitions( -DLTESTFILESPATH=L"${CMAKE_CURRENT_SOURCE_DIR}/../TestFiles")
+ add_definitions( -DLOUTFILESPATH=L"${CMAKE_BINARY_DIR}/")
+@@ -12,4 +10,4 @@ add_subdirectory(C_Interface)
+ # Tests on internal classes of the library
+ add_subdirectory(CPP)
+ 
+-set(STARTUPPROJECT ${STARTUPPROJECT} PARENT_SCOPE)
+\ No newline at end of file
++set(STARTUPPROJECT ${STARTUPPROJECT} PARENT_SCOPE)
+-- 
+2.26.0
+

diff --git a/media-libs/lib3mf/lib3mf-1.8.1.ebuild b/media-libs/lib3mf/lib3mf-1.8.1.ebuild
new file mode 100644
index 00000000000..a53ea513ef4
--- /dev/null
+++ b/media-libs/lib3mf/lib3mf-1.8.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Implementation of the 3D Manufacturing Format file standard"
+HOMEPAGE="https://3mf.io/"
+SRC_URI="https://github.com/3MFConsortium/$PN/archive/v$PV.tar.gz -> $P.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	dev-libs/libzip:=
+	sys-apps/util-linux
+	sys-libs/zlib
+"
+DEPEND="
+	${RDEPEND}
+	test? ( >=dev-cpp/gtest-1.8.0 )
+"
+
+PATCHES=(
+	"${FILESDIR}/${P}-0001-Gentoo-specific-avoid-pre-stripping-library.patch"
+	"${FILESDIR}/${P}-0002-Add-library-link-dependencies.patch"
+	"${FILESDIR}/${P}-0003-Change-installation-include-dir.patch"
+	"${FILESDIR}/${P}-0004-Gentoo-specific-Remove-gtest-source-dir.patch"
+)
+
+src_configure() {
+	local mycmakeargs=(
+		-DLIB3MF_TESTS=$(usex test)
+		-DUSE_INCLUDED_LIBZIP=OFF
+		-DUSE_INCLUDED_ZLIB=OFF
+	)
+	cmake_src_configure
+}
+
+src_install() {
+	local DOCS=( CONTRIBUTING.md README.md )
+	use doc && DOCS+=( Lib3MF-1.pdf )
+	cmake_src_install
+}

diff --git a/media-libs/lib3mf/metadata.xml b/media-libs/lib3mf/metadata.xml
new file mode 100644
index 00000000000..ca7507f06ed
--- /dev/null
+++ b/media-libs/lib3mf/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+	<email>waebbl@gmail.com</email>
+	<name>Bernd Waibel</name>
+</maintainer>
+<maintainer type="project">
+	<email>proxy-maint@gentoo.org</email>
+	<description>Gentoo Proxy Maintainer Team</description>
+</maintainer>
+<longdescription>
+	Implementation of the 3MF manufacturing file standard from the 3MF
+	consortium.
+	It provides reading and writing capabilities for 3MF files, as well
+	as conversion and validation tools for input and output data.
+</longdescription>
+<upstream>
+	<remote-id type="github">3MFConsortium/lib3mf</remote-id>
+</upstream>
+</pkgmetadata>


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

* [gentoo-commits] repo/gentoo:master commit in: media-libs/lib3mf/files/, media-libs/lib3mf/
@ 2021-04-10  4:24 Sam James
  0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2021-04-10  4:24 UTC (permalink / raw
  To: gentoo-commits

commit:     b74aaca2db7cd5f9d9bd15745d4ea52ab36e5886
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Tue Apr  6 18:36:18 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Apr 10 04:24:19 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b74aaca2

media-libs/lib3mf: re-add x86 keyword

Add USE flag to depend on system-provided dev-go/act
package.

Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...1-patch-to-use-system-provided-act-binary.patch | 141 +++++++++++++++++++++
 media-libs/lib3mf/lib3mf-2.1.1-r1.ebuild           |  69 ++++++++++
 media-libs/lib3mf/metadata.xml                     |   7 +
 3 files changed, 217 insertions(+)

diff --git a/media-libs/lib3mf/files/lib3mf-2.1.1-0001-patch-to-use-system-provided-act-binary.patch b/media-libs/lib3mf/files/lib3mf-2.1.1-0001-patch-to-use-system-provided-act-binary.patch
new file mode 100644
index 00000000000..00089c58468
--- /dev/null
+++ b/media-libs/lib3mf/files/lib3mf-2.1.1-0001-patch-to-use-system-provided-act-binary.patch
@@ -0,0 +1,141 @@
+From c4e004aa8580f799dbbb7ec6951e0826dc387811 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl-gentoo@posteo.net>
+Date: Tue, 6 Apr 2021 08:45:45 +0200
+Subject: [PATCH] patch to use system-provided act binary
+
+Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
+---
+ CMakeLists.txt | 109 +++++++++++++++++++++++++++++++++----------------
+ 1 file changed, 73 insertions(+), 36 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 64a11d9..55abdde 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -54,14 +54,19 @@ if (${MSVC})
+ endif()
+ 
+ ### The API generation target
+-if(CMAKE_HOST_UNIX)
+-  if(APPLE)
+-    set(ACT_COMMANDENDING darwin)
+-  else()
+-    set(ACT_COMMANDENDING linux)
++option(USE_SYSTEM_ACT "Use system-provided act binary" OFF)
++if(NOT USE_SYSTEM_ACT)
++  if(CMAKE_HOST_UNIX)
++    if(APPLE)
++      set(ACT_COMMANDENDING darwin)
++    else()
++      set(ACT_COMMANDENDING linux)
++    endif()
++  elseif(CMAKE_HOST_WIN32)
++    set(ACT_COMMANDENDING exe)
+   endif()
+-elseif(CMAKE_HOST_WIN32)
+-  set(ACT_COMMANDENDING exe)
++else()
++  find_program(ACT act)
+ endif()
+ 
+ set(CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED ${CMAKE_CURRENT_BINARY_DIR}/Autogenerated)
+@@ -71,35 +76,67 @@ set(ACT_GENERATED_SOURCE
+   ${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Source/Implementation/lib3mf_interfacewrapper.cpp
+   ${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Source/Implementation/lib3mf_interfacejournal.cpp 
+ )
+-add_custom_command(
+-  BYPRODUCTS
+-    ${ACT_GENERATED_SOURCE}
+-  OUTPUT
+-    ${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/LIB3MFACTGENERATIONSTAMP
+-  WORKING_DIRECTORY
+-    ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit
+-  COMMAND
+-    cmake -E make_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}"
+-  COMMAND
+-    cmake -E touch "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/LIB3MFACTGENERATIONSTAMP"
+-  COMMAND
+-    ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit/bin/act.${ACT_COMMANDENDING} ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit/lib3mf.xml
+-  COMMAND
+-    cmake -E remove_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Source"
+-  COMMAND
+-    cmake -E remove_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Bindings"
+-  COMMAND
+-    cmake -E copy_directory "${CMAKE_TEMP_HEADER_FOLDER}/Bindings" ${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Bindings
+-  COMMAND
+-    cmake -E copy_directory "${CMAKE_TEMP_HEADER_FOLDER}/Implementations/Cpp/Interfaces" "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Source/Implementation"
+-  COMMAND
+-    cmake -E remove_directory "${CMAKE_TEMP_HEADER_FOLDER}"
+-  COMMENT
+-    "Generating hourglass API bindings and implementation stub"
+-  DEPENDS
+-    ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit/lib3mf.xml
+-  VERBATIM
+-)
++if(NOT USE_SYSTEM_ACT)
++  add_custom_command(
++    BYPRODUCTS
++      ${ACT_GENERATED_SOURCE}
++    OUTPUT
++      ${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/LIB3MFACTGENERATIONSTAMP
++    WORKING_DIRECTORY
++      ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit
++    COMMAND
++      cmake -E make_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}"
++    COMMAND
++      cmake -E touch "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/LIB3MFACTGENERATIONSTAMP"
++    COMMAND
++      ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit/bin/act.${ACT_COMMANDENDING} ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit/lib3mf.xml
++    COMMAND
++      cmake -E remove_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Source"
++    COMMAND
++      cmake -E remove_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Bindings"
++    COMMAND
++      cmake -E copy_directory "${CMAKE_TEMP_HEADER_FOLDER}/Bindings" ${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Bindings
++    COMMAND
++      cmake -E copy_directory "${CMAKE_TEMP_HEADER_FOLDER}/Implementations/Cpp/Interfaces" "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Source/Implementation"
++    COMMAND
++      cmake -E remove_directory "${CMAKE_TEMP_HEADER_FOLDER}"
++    COMMENT
++      "Generating hourglass API bindings and implementation stub"
++    DEPENDS
++      ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit/lib3mf.xml
++    VERBATIM
++  )
++else()
++  add_custom_command(
++    BYPRODUCTS
++      ${ACT_GENERATED_SOURCE}
++    OUTPUT
++      ${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/LIB3MFACTGENERATIONSTAMP
++    WORKING_DIRECTORY
++      ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit
++    COMMAND
++      cmake -E make_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}"
++    COMMAND
++      cmake -E touch "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/LIB3MFACTGENERATIONSTAMP"
++    COMMAND
++      ${ACT} ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit/lib3mf.xml
++    COMMAND
++      cmake -E remove_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Source"
++    COMMAND
++      cmake -E remove_directory "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Bindings"
++    COMMAND
++      cmake -E copy_directory "${CMAKE_TEMP_HEADER_FOLDER}/Bindings" ${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Bindings
++    COMMAND
++      cmake -E copy_directory "${CMAKE_TEMP_HEADER_FOLDER}/Implementations/Cpp/Interfaces" "${CMAKE_CURRENT_BINARY_DIR_AUTOGENERATED}/Source/Implementation"
++    COMMAND
++      cmake -E remove_directory "${CMAKE_TEMP_HEADER_FOLDER}"
++    COMMENT
++      "Generating hourglass API bindings and implementation stub"
++    DEPENDS
++      ${CMAKE_CURRENT_SOURCE_DIR}/AutomaticComponentToolkit/lib3mf.xml
++    VERBATIM
++  )
++endif()
+ 
+ add_custom_target(lib3mfACT
+   DEPENDS
+-- 
+2.31.1
+

diff --git a/media-libs/lib3mf/lib3mf-2.1.1-r1.ebuild b/media-libs/lib3mf/lib3mf-2.1.1-r1.ebuild
new file mode 100644
index 00000000000..fb5acbc060c
--- /dev/null
+++ b/media-libs/lib3mf/lib3mf-2.1.1-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake eapi8-dosym
+
+DESCRIPTION="Implementation of the 3D Manufacturing Format file standard"
+HOMEPAGE="https://3mf.io/ https://github.com/3MFConsortium/lib3mf"
+SRC_URI="https://github.com/3MFConsortium/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/2"
+# the included ACT binary is a statically x86_64 built one
+# see https://github.com/3MFConsortium/lib3mf/issues/199
+# Keyword arm64 can be re-added after we have dev-go/act
+# package keyworded
+KEYWORDS="~amd64 ~x86"
+IUSE="+system-act test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	dev-libs/libzip:=
+	sys-apps/util-linux
+	sys-libs/zlib
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+	virtual/pkgconfig
+	system-act? ( dev-go/act )
+	test? (
+		dev-cpp/gtest
+		dev-libs/openssl
+		dev-util/valgrind
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.1.0-0001-Gentoo-specific-avoid-pre-stripping-library.patch
+	"${FILESDIR}"/${P}-0001-patch-to-use-system-provided-act-binary.patch
+)
+
+src_configure() {
+	local mycmakeargs=(
+		-DCMAKE_INSTALL_INCLUDEDIR="include/${PN}"
+		-DLIB3MF_TESTS=$(usex test)
+		-DUSE_INCLUDED_LIBZIP=OFF
+		-DUSE_INCLUDED_ZLIB=OFF
+		-DUSE_SYSTEM_ACT=$(usex system-act)
+	)
+
+	if use test; then
+		mycmakeargs+=(
+			-DUSE_INCLUDED_GTEST=OFF
+			# code says it uses libressl, but works with openssl too
+			-DUSE_INCLUDED_SSL=OFF
+		)
+	fi
+
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+
+	for suf in abi types implicit; do
+		dosym8 -r /usr/include/${PN}/Bindings/Cpp/${PN}_${suf}.hpp /usr/include/${PN}/${PN}_${suf}.hpp
+	done
+}

diff --git a/media-libs/lib3mf/metadata.xml b/media-libs/lib3mf/metadata.xml
index 7907c9b23f8..2b80f7d806e 100644
--- a/media-libs/lib3mf/metadata.xml
+++ b/media-libs/lib3mf/metadata.xml
@@ -15,6 +15,13 @@
 	It provides reading and writing capabilities for 3MF files, as well
 	as conversion and validation tools for input and output data.
 </longdescription>
+<use>
+	<flag name="system-act">
+		Use system-provided <pkg>dev-go/act</pkg> as code generator
+		instead of package provided binaries. This flag will be removed
+		after some time used for testing!
+	</flag>
+</use>
 <upstream>
 	<remote-id type="github">3MFConsortium/lib3mf</remote-id>
 </upstream>


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

* [gentoo-commits] repo/gentoo:master commit in: media-libs/lib3mf/files/, media-libs/lib3mf/
@ 2023-02-22 16:16 Sam James
  0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2023-02-22 16:16 UTC (permalink / raw
  To: gentoo-commits

commit:     5cc37b8d342de65e1dec5744d9b600c101e14078
Author:     Peter Levine <plevine457 <AT> gmail <DOT> com>
AuthorDate: Sat Feb 18 10:36:33 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Feb 22 16:14:13 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5cc37b8d

media-libs/lib3mf: fix bug #895180

Remove the lines in CMakeLists.txt that emit -std=c++11 (as wall as
emitting -O2) to enable the compiler default, which builds against
the latest GTest with both clang-16.0.0_pre20230107 and
gcc-12.2.1_p20230121-r1.

Closes: https://bugs.gentoo.org/895180
Closes: https://github.com/gentoo/gentoo/pull/29644
Signed-off-by: Peter Levine <plevine457 <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...ib3mf-2.2.0-0001-remove-std-and-opt-flags.patch | 30 ++++++++++++++++++++++
 media-libs/lib3mf/lib3mf-2.2.0.ebuild              |  3 ++-
 2 files changed, 32 insertions(+), 1 deletion(-)

diff --git a/media-libs/lib3mf/files/lib3mf-2.2.0-0001-remove-std-and-opt-flags.patch b/media-libs/lib3mf/files/lib3mf-2.2.0-0001-remove-std-and-opt-flags.patch
new file mode 100644
index 000000000000..c13ec9bfab90
--- /dev/null
+++ b/media-libs/lib3mf/files/lib3mf-2.2.0-0001-remove-std-and-opt-flags.patch
@@ -0,0 +1,30 @@
+From 057ae273bf223573b7cdb6ec978e051220ffe401 Mon Sep 17 00:00:00 2001
+From: Peter Levine <plevine457@gmail.com>
+Date: Sat, 18 Feb 2023 13:21:29 -0500
+Subject: [PATCH] [Gentoo specific] remove optimization flags and C++ standard
+ flags
+
+Remove the lines in CMakeLists.txt that emit -std=c++11 (as wall as
+emitting -O2) to enable the compiler default, which builds against
+the latest GTest with both clang-16.0.0_pre20230107 and
+gcc-12.2.1_p20230121-r1.
+
+Signed-off-by: Peter Levine <plevine457@gmail.com>
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -32,12 +32,10 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+   # using GCC
+   add_definitions(-DBUILD_DLL)
+   add_compile_options(-Wall)
+-  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O2")
+ elseif ("${CMAKE_SYSTEM_NAME}" MATCHES "Darwin")
+   # using GCC
+   add_definitions(-DBUILD_DLL)
+   add_compile_options(-Wall) 
+-  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -O2")
+   set(CMAKE_MACOSX_RPATH ON)
+ endif()
+ 
+-- 
+2.39.1
+

diff --git a/media-libs/lib3mf/lib3mf-2.2.0.ebuild b/media-libs/lib3mf/lib3mf-2.2.0.ebuild
index 65a29e035e5e..a9fa3aeee64c 100644
--- a/media-libs/lib3mf/lib3mf-2.2.0.ebuild
+++ b/media-libs/lib3mf/lib3mf-2.2.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -35,6 +35,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-2.1.0-0001-Gentoo-specific-avoid-pre-stripping-library.patch
 	"${FILESDIR}"/${P}-0001-use-system-provided-act-binary.patch
 	"${FILESDIR}"/${P}-0002-Gentoo-specific-remove-add_dependencies.patch
+	"${FILESDIR}"/${P}-0001-remove-std-and-opt-flags.patch
 )
 
 src_configure() {


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

* [gentoo-commits] repo/gentoo:master commit in: media-libs/lib3mf/files/, media-libs/lib3mf/
@ 2025-10-17 13:50 Sam James
  0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2025-10-17 13:50 UTC (permalink / raw
  To: gentoo-commits

commit:     ae9d9745a12dd219adf6220cc26701cad0a2c22d
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Fri Oct 17 13:41:07 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Oct 17 13:50:01 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ae9d9745

media-libs/lib3mf: drop 2.3.2

Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/44221
Closes: https://github.com/gentoo/gentoo/pull/44221
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/lib3mf/Manifest                         |  1 -
 .../files/lib3mf-2.2.0-include-cstdint.patch       | 13 ----
 .../files/lib3mf-2.3.2-include-cstdint.patch       | 13 ----
 .../lib3mf-2.3.2-remove-std-and-opt-flags.patch    | 30 ---------
 media-libs/lib3mf/lib3mf-2.3.2.ebuild              | 71 ----------------------
 media-libs/lib3mf/metadata.xml                     |  7 ---
 6 files changed, 135 deletions(-)

diff --git a/media-libs/lib3mf/Manifest b/media-libs/lib3mf/Manifest
index cea3a9b7a687..0dd615930de7 100644
--- a/media-libs/lib3mf/Manifest
+++ b/media-libs/lib3mf/Manifest
@@ -1,2 +1 @@
-DIST lib3mf-2.3.2.tar.gz 35247937 BLAKE2B 8e20e44d715a2942dea8b3d08cb18593162bfd12b9f09b82b182e901f6beb76e2c88d83860c39cdd4e4c239e18f6949e9f9fd5921bc8a9d257975c54a8777e26 SHA512 875529759aff6128b32291d0719b95a75a72a3b19f98711b12c9b1076727b231668b3b14604e69bb1fec79b4725fd098f030b7e965072e566bfb061f3086279c
 DIST lib3mf-2.4.1.tar.gz 36313494 BLAKE2B f5fea473e2e28480372cc39178e78022c3612e705d4ea95366a9b9988bdf729a09ee6045af234bc3b4d817d2cd77c1523b27c93abc86c10893a04268276aa251 SHA512 91d3928315bd5d1a8553284505d28c7d839a3cbd8b07a87bca5a21087fffa8ba7a1738ed14313212815a09e33f7a82318f7b069f1bbe40456b57ec528379ab4b

diff --git a/media-libs/lib3mf/files/lib3mf-2.2.0-include-cstdint.patch b/media-libs/lib3mf/files/lib3mf-2.2.0-include-cstdint.patch
deleted file mode 100644
index 36776fd02751..000000000000
--- a/media-libs/lib3mf/files/lib3mf-2.2.0-include-cstdint.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/Source/Common/Platform/NMR_ImportStream_Unique_Memory.cpp b/Source/Common/Platform/NMR_ImportStream_Unique_Memory.cpp
-index 43fd428..e966aa0 100644
---- a/Source/Common/Platform/NMR_ImportStream_Unique_Memory.cpp
-+++ b/Source/Common/Platform/NMR_ImportStream_Unique_Memory.cpp
-@@ -35,6 +35,8 @@ This is a platform independent class for keeping data in a memory stream that ow
- #include "Common/NMR_Exception.h"
- #include "Common/NMR_Exception_Windows.h"
- 
-+#include <cstdint>
-+
- namespace NMR {
- 
- 	CImportStream_Unique_Memory::CImportStream_Unique_Memory()

diff --git a/media-libs/lib3mf/files/lib3mf-2.3.2-include-cstdint.patch b/media-libs/lib3mf/files/lib3mf-2.3.2-include-cstdint.patch
deleted file mode 100644
index 13df032b71fc..000000000000
--- a/media-libs/lib3mf/files/lib3mf-2.3.2-include-cstdint.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/Source/Common/Platform/NMR_EncryptionHeader.cpp
-+++ b/Source/Common/Platform/NMR_EncryptionHeader.cpp
-@@ -8,6 +8,7 @@
- #include "Common/Platform/NMR_ExportStream.h"
- 
- #include "Common/NMR_Architecture_Utils.h"
-+#include <cstdint>
- #include <cstring>
- 
- #define LIB3MF_MAXENCRYPTIONHEADERSIZE (1UL << 31)
--- 
-2.47.1
-

diff --git a/media-libs/lib3mf/files/lib3mf-2.3.2-remove-std-and-opt-flags.patch b/media-libs/lib3mf/files/lib3mf-2.3.2-remove-std-and-opt-flags.patch
deleted file mode 100644
index 0230335b87ec..000000000000
--- a/media-libs/lib3mf/files/lib3mf-2.3.2-remove-std-and-opt-flags.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 057ae273bf223573b7cdb6ec978e051220ffe401 Mon Sep 17 00:00:00 2001
-From: Peter Levine <plevine457@gmail.com>
-Date: Sat, 18 Feb 2023 13:21:29 -0500
-Subject: [PATCH] [Gentoo specific] remove optimization flags and C++ standard
- flags
-
-Remove the lines in CMakeLists.txt that emit -std=c++11 (as wall as
-emitting -O2) to enable the compiler default, which builds against
-the latest GTest with both clang-16.0.0_pre20230107 and
-gcc-12.2.1_p20230121-r1.
-
-Signed-off-by: Peter Levine <plevine457@gmail.com>
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -32,12 +32,10 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
-   # using GCC
-   add_definitions(-DBUILD_DLL)
-   add_compile_options(-Wall)
--  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -O2")
- elseif ("${CMAKE_SYSTEM_NAME}" MATCHES "Darwin")
-   # using GCC
-   add_definitions(-DBUILD_DLL)
-   add_compile_options(-Wall) 
--  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -O2")
-   set(CMAKE_MACOSX_RPATH ON)
- endif()
- 
--- 
-2.39.1
-

diff --git a/media-libs/lib3mf/lib3mf-2.3.2.ebuild b/media-libs/lib3mf/lib3mf-2.3.2.ebuild
deleted file mode 100644
index 4cb044e73b86..000000000000
--- a/media-libs/lib3mf/lib3mf-2.3.2.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="Implementation of the 3D Manufacturing Format file standard"
-HOMEPAGE="https://3mf.io/ https://github.com/3MFConsortium/lib3mf"
-SRC_URI="https://github.com/3MFConsortium/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0/2"
-KEYWORDS="amd64 ~arm64 ~ppc64 x86"
-IUSE="+system-act test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	dev-libs/libzip:=
-	sys-apps/util-linux
-	sys-libs/zlib
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	virtual/pkgconfig
-	test? (
-		dev-cpp/gtest
-		dev-libs/openssl
-		dev-debug/valgrind
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-2.3.2-remove-std-and-opt-flags.patch
-	"${FILESDIR}"/${PN}-2.2.0-include-cstdint.patch
-	"${FILESDIR}"/${PN}-2.3.2-include-cstdint.patch
-)
-
-src_prepare() {
-	cmake_src_prepare
-
-	# DO NOT WANT!
-	rm -r Libraries/libressl || die
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DCMAKE_INSTALL_INCLUDEDIR="include/${PN}"
-		-DLIB3MF_TESTS=$(usex test)
-		-DUSE_INCLUDED_LIBZIP=OFF
-		-DUSE_INCLUDED_ZLIB=OFF
-		-DSTRIP_BINARIES=OFF
-	)
-
-	if use test; then
-		mycmakeargs+=(
-			# code says it uses libressl, but works with openssl too
-			-DUSE_INCLUDED_SSL=OFF
-		)
-	fi
-
-	cmake_src_configure
-}
-
-src_install() {
-	cmake_src_install
-
-	for suf in abi types implicit; do
-		dosym -r /usr/include/${PN}/Bindings/Cpp/${PN}_${suf}.hpp /usr/include/${PN}/${PN}_${suf}.hpp
-	done
-}

diff --git a/media-libs/lib3mf/metadata.xml b/media-libs/lib3mf/metadata.xml
index d93427ed8a3b..6af88f042b41 100644
--- a/media-libs/lib3mf/metadata.xml
+++ b/media-libs/lib3mf/metadata.xml
@@ -15,13 +15,6 @@
 	It provides reading and writing capabilities for 3MF files, as well
 	as conversion and validation tools for input and output data.
 </longdescription>
-<use>
-	<flag name="system-act">
-		Use system-provided <pkg>dev-go/act</pkg> as code generator
-		instead of package provided binaries. This flag will be removed
-		after some time used for testing!
-	</flag>
-</use>
 <upstream>
 	<remote-id type="github">3MFConsortium/lib3mf</remote-id>
 </upstream>


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

end of thread, other threads:[~2025-10-17 13:50 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-04-10  4:24 [gentoo-commits] repo/gentoo:master commit in: media-libs/lib3mf/files/, media-libs/lib3mf/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2025-10-17 13:50 Sam James
2023-02-22 16:16 Sam James
2020-04-11 14:17 Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox