[PATCH 0/5] obs: Update to 30.1.2

  • Done
  • quality assurance status badge
Details
2 participants
  • Andrew Tropin
  • iyzsong
Owner
unassigned
Submitted by
iyzsong
Severity
normal
I
I
iyzsong wrote on 24 May 06:30 +0200
(address . guix-patches@gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
cover.1716524546.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

Hello, these patches update OBS studio to its latest version.

qrcodegen-cpp needs to be updated for obs, need check telegram-desktop
and libreoffice if they build okay with the newer qrcodegen-cpp. I haven't
check that.

Add a LD_LIBRARY_PATH hack for mesa, without it obs won't get a
display via libglvnd's libEGL. It seems we need build mesa with glvnd
support (which will bring egl_vendor.d/50_mesa.json for libglvend to
consume, and rename libEGL.so to libEGL_mesa.so).


Sou Bunnbu (???) (5):
gnu: Add plog.
gnu: Add libjuice.
gnu: Add libdatachannel.
gnu: qrcodegen-cpp: Update to 1.8.0.
gnu: obs: Update to 30.1.2.

gnu/local.mk | 2 +-
gnu/packages/aidc.scm | 22 +-
gnu/packages/logging.scm | 25 +
.../patches/qrcodegen-cpp-cmake.patch | 506 ++++++++++++++++++
.../patches/qrcodegen-cpp-make-install.patch | 448 ----------------
gnu/packages/video.scm | 21 +-
gnu/packages/web.scm | 53 ++
7 files changed, 606 insertions(+), 471 deletions(-)
create mode 100644 gnu/packages/patches/qrcodegen-cpp-cmake.patch
delete mode 100644 gnu/packages/patches/qrcodegen-cpp-make-install.patch


base-commit: 9901416233867233192b63fde7f616751127b189
--
2.41.0
I
I
iyzsong wrote on 24 May 06:31 +0200
[PATCH 1/5] gnu: Add plog.
(address . 71161@debbugs.gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
07e5093bc880250e4662e66f58c57c80c3490520.1716524546.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

* gnu/packages/logging.scm (plog): New variable.

Change-Id: Ibb90ffc6342d099d3ca5e8e1694b0128d78f5d4c
---
gnu/packages/logging.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/logging.scm b/gnu/packages/logging.scm
index a757c22154..9cc28279d7 100644
--- a/gnu/packages/logging.scm
+++ b/gnu/packages/logging.scm
@@ -119,6 +119,31 @@ (define-public glog
command line.")
(license license:bsd-3)))
+(define-public plog
+ (package
+ (name "plog")
+ (version "1.1.10")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/SergiusTheBest/plog")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1kxqz3vn98y1qij60sxn0ldv5q2xh2zbp7v8cd9m21sf1yp636im"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:configure-flags
+ #~'("-DPLOG_BUILD_TESTS=ON")))
+ (home-page "https://github.com/SergiusTheBest/plog")
+ (synopsis "C++ logging library")
+ (description
+ "Plog is a C++ logging library that is designed to be simple, small and
+flexible. It is created as an alternative to existing large libraries and
+provides some unique features such as CSV log format and wide string support.")
+ (license license:expat)))
+
;; This is the legacy version of the tailon package. The new version, written
;; in Go in available here: https://github.com/gvalkov/tailon.
(define-public tailon
--
2.41.0
I
I
iyzsong wrote on 24 May 06:31 +0200
[PATCH 2/5] gnu: Add libjuice.
(address . 71161@debbugs.gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
f7d45d22c9fb1ccb1ab9bf7904ac3dd495803482.1716524546.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

* gnu/packages/web.scm (libjuice): New variable.

Change-Id: I5ad910e687cc20d356800e5c4ac02d5158f122f3
---
gnu/packages/web.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (36 lines)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index cbf270ec6b..b9d1f42f00 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -2141,6 +2141,29 @@ (define-public wwwoffle
changes, and much more.")
(license license:gpl2+)))
+(define-public libjuice
+ (package
+ (name "libjuice")
+ (version "1.4.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/paullouisageneau/libjuice")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "035kqyp5bcawzkpqpjb1qjwqf0dp2gm9h2j9py5iiahcvfjwh70i"))))
+ (build-system cmake-build-system)
+ (arguments (list #:tests? #f)) ; requires internet access
+ (home-page "https://github.com/paullouisageneau/libjuice")
+ (synopsis "UDP Interactive Connectivity Establishment library")
+ (description "@code{libjuice} allows to open bidirectionnal User Datagram
+Protocol (UDP) streams with Network Address Translator (NAT) traversal. It's a
+simplified implementation of the Interactive Connectivity Establishment (ICE)
+protocol, client-side and server-side, written in C without dependencies for
+POSIX platforms.")
+ (license license:mpl2.0)))
(define-public liboauth
(package
(name "liboauth")
--
2.41.0
I
I
iyzsong wrote on 24 May 06:31 +0200
[PATCH 3/5] gnu: Add libdatachannel.
(address . 71161@debbugs.gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
56c0896017d9ae5c570dcb30217126296073fd23.1716524546.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

* gnu/packages/web.scm (libdatachannel): New variable.

Change-Id: Idc8996eec5160574649575a5519c6510baf194a5
---
gnu/packages/web.scm | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index b9d1f42f00..39c35d6970 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -169,6 +169,7 @@ (define-module (gnu packages web)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages linux)
#:use-module (gnu packages lisp-xyz)
+ #:use-module (gnu packages logging)
#:use-module (gnu packages lsof)
#:use-module (gnu packages lua)
#:use-module (gnu packages mail)
@@ -200,6 +201,7 @@ (define-module (gnu packages web)
#:use-module (gnu packages serialization)
#:use-module (gnu packages skribilo)
#:use-module (gnu packages sphinx)
+ #:use-module (gnu packages telephony)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils)
#:use-module (gnu packages time)
@@ -2164,6 +2166,34 @@ (define-public libjuice
protocol, client-side and server-side, written in C without dependencies for
POSIX platforms.")
(license license:mpl2.0)))
+
+(define-public libdatachannel
+ (package
+ (name "libdatachannel")
+ (version "0.21.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/paullouisageneau/libdatachannel")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "11icbyd71dw5ywjdviq580xvad24yfsjj3c5zpjqsxc883i40dxi"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list #:tests? #f ; requires internet access
+ #:configure-flags
+ #~'("-DPREFER_SYSTEM_LIB=ON")))
+ (inputs (list libjuice libsrtp nlohmann-json openssl plog usrsctp))
+ (home-page "https://libdatachannel.org/")
+ (synopsis "WebRTC Data Channels and WebSockets library")
+ (description "@code{libdatachannel} is a standalone implementation of WebRTC
+Data Channels, WebRTC Media Transport, and WebSockets in C++17 with C bindings
+for POSIX platforms. WebRTC is a W3C and IETF standard enabling real-time
+peer-to-peer data and media exchange between two devices.")
+ (license license:mpl2.0)))
+
(define-public liboauth
(package
(name "liboauth")
--
2.41.0
I
I
iyzsong wrote on 24 May 06:31 +0200
[PATCH 4/5] gnu: qrcodegen-cpp: Update to 1.8.0.
(address . 71161@debbugs.gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
3b02d61e346c00d171fb17f85fddb99c411f2227.1716524546.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

* gnu/packages/aidc.scm (qrcodegen-cpp): Update to 1.8.0.
[source]: Use qrcodegen-cpp-cmake.patch.
[build-system]: Switch to cmake-build-system.
[arguments]: Enable tests and build shared libraries.
* gnu/packages/patches/qrcodegen-cpp-make-install.patch: Remove file.
* gnu/packages/patches/qrcodegen-cpp-cmake.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register patch.

Change-Id: I0272a28ab2cda89700b5523e96f3014eff7ebf65
---
gnu/local.mk | 2 +-
gnu/packages/aidc.scm | 22 +-
.../patches/qrcodegen-cpp-cmake.patch | 506 ++++++++++++++++++
.../patches/qrcodegen-cpp-make-install.patch | 448 ----------------
4 files changed, 514 insertions(+), 464 deletions(-)
create mode 100644 gnu/packages/patches/qrcodegen-cpp-cmake.patch
delete mode 100644 gnu/packages/patches/qrcodegen-cpp-make-install.patch

Toggle diff (604 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index d76c0d1e39..508a79cbad 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1974,7 +1974,7 @@ dist_patch_DATA = \
%D%/packages/patches/qemu-glibc-2.27.patch \
%D%/packages/patches/qemu-glibc-2.30.patch \
%D%/packages/patches/qemu-fix-agent-paths.patch \
- %D%/packages/patches/qrcodegen-cpp-make-install.patch \
+ %D%/packages/patches/qrcodegen-cpp-cmake.patch \
%D%/packages/patches/qtbase-absolute-runpath.patch \
%D%/packages/patches/qtbase-find-tools-in-PATH.patch \
%D%/packages/patches/qtbase-qmake-fix-includedir.patch \
diff --git a/gnu/packages/aidc.scm b/gnu/packages/aidc.scm
index b0fc1b30d9..bc9c47a480 100644
--- a/gnu/packages/aidc.scm
+++ b/gnu/packages/aidc.scm
@@ -228,30 +228,22 @@ (define-public zbar
(define-public qrcodegen-cpp
(package
(name "qrcodegen-cpp")
- (version "1.6.0")
+ (version "1.8.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nayuki/QR-Code-generator")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
- (patches (search-patches "qrcodegen-cpp-make-install.patch"))
+ (patches (search-patches "qrcodegen-cpp-cmake.patch"))
(sha256
(base32
- "0iq9sv9na0vg996aqrxrjn9rrbiyy7sc9vslw945p3ky22pw3lql"))))
- (build-system gnu-build-system)
+ "0dk9ci5gchxa8gh0hyhlj3d5jwxqlnfm85xyp791ldaia14bkj39"))))
+ (build-system cmake-build-system)
(arguments
- `(#:tests? #f ; no test suite
- #:make-flags
- (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
- #:phases
- (modify-phases %standard-phases
- (delete 'configure) ; No ./configure script
- ;; Only build the C++ variant.
- (add-after 'unpack 'chdir
- (lambda _
- (chdir "cpp")
- #t)))))
+ (list #:configure-flags
+ #~'("-DBUILD_TESTS=ON"
+ "-DBUILD_SHARED_LIBS=ON")))
(synopsis "QR Code generator library")
(description "qrcodegen-cpp is a QR code generator library in C++. The
project also offers Java, Javascript, Python, C, and Rust implementations.")
diff --git a/gnu/packages/patches/qrcodegen-cpp-cmake.patch b/gnu/packages/patches/qrcodegen-cpp-cmake.patch
new file mode 100644
index 0000000000..aa0716f173
--- /dev/null
+++ b/gnu/packages/patches/qrcodegen-cpp-cmake.patch
@@ -0,0 +1,506 @@
+From 283d6a4bae95f42aaccd9ddd06d16c2e33ed4abf Mon Sep 17 00:00:00 2001
+From: Vitaly Zaitsev <vitaly@easycoding.org>
+Date: Thu, 21 Apr 2022 15:36:23 +0200
+Subject: [PATCH 1/2] Implemented CMake build support.
+
+Co-authored-by: leha-bot <leha-bot@users.noreply.github.com>
+Signed-off-by: Vitaly Zaitsev <vitaly@easycoding.org>
+---
+ CMakeLists.txt | 235 +++++++++++++++++++++++++++++
+ c/Makefile | 88 -----------
+ cmake/qrcodegen-config.cmake.in | 4 +
+ cmake/qrcodegen.pc.in | 11 ++
+ cmake/qrcodegencpp-config.cmake.in | 4 +
+ cmake/qrcodegencpp.pc.in | 11 ++
+ cpp/Makefile | 84 -----------
+ 7 files changed, 265 insertions(+), 172 deletions(-)
+ create mode 100644 CMakeLists.txt
+ delete mode 100644 c/Makefile
+ create mode 100644 cmake/qrcodegen-config.cmake.in
+ create mode 100644 cmake/qrcodegen.pc.in
+ create mode 100644 cmake/qrcodegencpp-config.cmake.in
+ create mode 100644 cmake/qrcodegencpp.pc.in
+ delete mode 100644 cpp/Makefile
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+new file mode 100644
+index 0000000..b07197f
+--- /dev/null
++++ b/CMakeLists.txt
+@@ -0,0 +1,235 @@
++# ==============================
++# === Project initialization ===
++# ==============================
++
++cmake_minimum_required(VERSION 3.12)
++
++project(QR-Code-generator
++ VERSION 1.8.0
++ DESCRIPTION "High-quality QR Code generator library in Java, TypeScript/JavaScript, Python, C++, C, Rust"
++ HOMEPAGE_URL "https://www.nayuki.io/page/qr-code-generator-library"
++ LANGUAGES C CXX
++)
++
++set(CMAKE_CXX_STANDARD 11)
++set(CMAKE_CXX_STANDARD_REQUIRED ON)
++
++# =======================
++# === Project options ===
++# =======================
++
++option(BUILD_EXAMPLES "Build examples and demos" OFF)
++option(BUILD_TESTS "Build and run unit tests" OFF)
++
++# =======================
++# === Paths detection ===
++# =======================
++
++include(GNUInstallDirs)
++
++# ============================
++# === CMake config helpers ===
++# ============================
++
++include(CMakePackageConfigHelpers)
++
++# ========================
++# === C library target ===
++# ========================
++
++set(QRCODEGEN_NAME "qrcodegen")
++
++set(QRCODEGEN_SOURCES
++ c/qrcodegen.c
++)
++
++set(QRCODEGEN_HEADERS
++ c/qrcodegen.h
++)
++
++add_library(${QRCODEGEN_NAME}
++ ${QRCODEGEN_SOURCES}
++ ${QRCODEGEN_HEADERS}
++)
++
++target_include_directories(${QRCODEGEN_NAME} PUBLIC
++ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/c>
++ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/${QRCODEGEN_NAME}>
++)
++
++set_property(TARGET ${QRCODEGEN_NAME} PROPERTY PUBLIC_HEADER ${QRCODEGEN_HEADERS})
++set_property(TARGET ${QRCODEGEN_NAME} PROPERTY VERSION ${CMAKE_PROJECT_VERSION})
++set_property(TARGET ${QRCODEGEN_NAME} PROPERTY SOVERSION 1)
++
++install(TARGETS ${QRCODEGEN_NAME}
++ EXPORT ${QRCODEGEN_NAME}-targets
++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR}
++ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${QRCODEGEN_NAME}
++)
++
++configure_package_config_file(cmake/${QRCODEGEN_NAME}-config.cmake.in
++ ${QRCODEGEN_NAME}-config.cmake
++ INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${QRCODEGEN_NAME}
++)
++write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGEN_NAME}-config-version.cmake
++ COMPATIBILITY ExactVersion
++)
++
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGEN_NAME}-config.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGEN_NAME}-config-version.cmake
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${QRCODEGEN_NAME}
++)
++
++install(EXPORT ${QRCODEGEN_NAME}-targets
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${QRCODEGEN_NAME}
++ NAMESPACE ${QRCODEGEN_NAME}::
++)
++
++configure_file(cmake/${QRCODEGEN_NAME}.pc.in
++ ${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGEN_NAME}.pc
++ @ONLY
++)
++
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGEN_NAME}.pc
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
++)
++
++# =========================
++# === C examples target ===
++# =========================
++
++if(BUILD_EXAMPLES)
++ set(QRCODEGENDEMO_SOURCES
++ c/qrcodegen-demo.c
++ )
++
++ add_executable(${QRCODEGEN_NAME}-demo
++ ${QRCODEGENDEMO_SOURCES}
++ )
++
++ target_link_libraries(${QRCODEGEN_NAME}-demo PRIVATE
++ ${QRCODEGEN_NAME}
++ )
++endif()
++
++# ======================
++# === C tests target ===
++# ======================
++
++if (BUILD_TESTS)
++ set(QRCODEGENTEST_SOURCES
++ c/qrcodegen-test.c
++ )
++
++ add_library(${QRCODEGEN_NAME}-testable OBJECT
++ ${QRCODEGEN_SOURCES}
++ ${QRCODEGEN_HEADERS}
++ )
++
++ target_compile_options(${QRCODEGEN_NAME}-testable PUBLIC
++ -DQRCODEGEN_TEST
++ )
++
++ add_executable(${QRCODEGEN_NAME}-test
++ ${QRCODEGENTEST_SOURCES}
++ )
++
++ target_link_libraries(${QRCODEGEN_NAME}-test PRIVATE
++ ${QRCODEGEN_NAME}-testable
++ )
++
++ add_test(NAME ${QRCODEGEN_NAME}-test COMMAND ${QRCODEGEN_NAME}-test)
++endif()
++
++# ==========================
++# === C++ library target ===
++# ==========================
++
++set(QRCODEGENCPP_NAME "qrcodegencpp")
++
++set(QRCODEGENCPP_SOURCES
++ cpp/qrcodegen.cpp
++)
++
++set(QRCODEGENCPP_HEADERS
++ cpp/qrcodegen.hpp
++)
++
++add_library(${QRCODEGENCPP_NAME}
++ ${QRCODEGENCPP_SOURCES}
++ ${QRCODEGENCPP_HEADERS}
++)
++
++target_include_directories(${QRCODEGENCPP_NAME} PUBLIC
++ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/cpp>
++ $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/${QRCODEGENCPP_NAME}>
++)
++
++set_property(TARGET ${QRCODEGENCPP_NAME} PROPERTY PUBLIC_HEADER ${QRCODEGENCPP_HEADERS})
++set_property(TARGET ${QRCODEGENCPP_NAME} PROPERTY VERSION ${CMAKE_PROJECT_VERSION})
++set_property(TARGET ${QRCODEGENCPP_NAME} PROPERTY SOVERSION 1)
++
++install(TARGETS ${QRCODEGENCPP_NAME}
++ EXPORT ${QRCODEGENCPP_NAME}-targets
++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR}
++ PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${QRCODEGENCPP_NAME}
++)
++
++configure_package_config_file(cmake/${QRCODEGENCPP_NAME}-config.cmake.in
++ ${QRCODEGENCPP_NAME}-config.cmake
++ INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${QRCODEGENCPP_NAME}
++)
++write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGENCPP_NAME}-config-version.cmake
++ COMPATIBILITY ExactVersion
++)
++
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGENCPP_NAME}-config.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGENCPP_NAME}-config-version.cmake
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${QRCODEGENCPP_NAME}
++)
++
++install(EXPORT ${QRCODEGENCPP_NAME}-targets
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${QRCODEGENCPP_NAME}
++ NAMESPACE ${QRCODEGENCPP_NAME}::
++)
++
++configure_file(cmake/${QRCODEGENCPP_NAME}.pc.in
++ ${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGENCPP_NAME}.pc
++ @ONLY
++)
++
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/${QRCODEGENCPP_NAME}.pc
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
++)
++
++# ===========================
++# === C++ examples target ===
++# ===========================
++
++if(BUILD_EXAMPLES)
++ set(QRCODEGENCPPDEMO_SOURCES
++ cpp/QrCodeGeneratorDemo.cpp
++ )
++
++ add_executable(${QRCODEGENCPP_NAME}-demo
++ ${QRCODEGENCPPDEMO_SOURCES}
++ )
++
++ target_link_libraries(${QRCODEGENCPP_NAME}-demo PRIVATE
++ ${QRCODEGENCPP_NAME}
++ )
++endif()
++
++# ====================
++# === Tests export ===
++# ====================
++
++if (BUILD_TESTS)
++ enable_testing()
++endif()
+diff --git a/c/Makefile b/c/Makefile
+deleted file mode 100644
+index 661b1f7..0000000
+--- a/c/Makefile
++++ /dev/null
+@@ -1,88 +0,0 @@
+-#
+-# Makefile for QR Code generator (C)
+-#
+-# Copyright (c) Project Nayuki. (MIT License)
+-# https://www.nayuki.io/page/qr-code-generator-library
+-#
+-# Permission is hereby granted, free of charge, to any person obtaining a copy of
+-# this software and associated documentation files (the "Software"), to deal in
+-# the Software without restriction, including without limitation the rights to
+-# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+-# the Software, and to permit persons to whom the Software is furnished to do so,
+-# subject to the following conditions:
+-# - The above copyright notice and this permission notice shall be included in
+-# all copies or substantial portions of the Software.
+-# - The Software is provided "as is", without warranty of any kind, express or
+-# implied, including but not limited to the warranties of merchantability,
+-# fitness for a particular purpose and noninfringement. In no event shall the
+-# authors or copyright holders be liable for any claim, damages or other
+-# liability, whether in an action of contract, tort or otherwise, arising from,
+-# out of or in connection with the Software or the use or other dealings in the
+-# Software.
+-#
+-
+-
+-# ---- Configuration options ----
+-
+-# External/implicit variables:
+-# - CC: The C compiler, such as gcc or clang.
+-# - CFLAGS: Any extra user-specified compiler flags (can be blank).
+-
+-# Recommended compiler flags:
+-CFLAGS += -std=c99 -O
+-
+-# Extra flags for diagnostics:
+-# CFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address
+-
+-
+-# ---- Controlling make ----
+-
+-# Clear default suffix rules
+-.SUFFIXES:
+-
+-# Don't delete object files
+-.SECONDARY:
+-
+-# Stuff concerning goals
+-.DEFAULT_GOAL = all
+-.PHONY: all clean
+-
+-
+-# ---- Targets to build ----
+-
+-LIB = qrcodegen
+-LIBFILE = lib$(LIB).a
+-LIBOBJ = qrcodegen.o
+-MAINS = qrcodegen-demo qrcodegen-test
+-
+-# Build all binaries
+-all: $(LIBFILE) $(MAINS)
+-
+-# Delete build output
+-clean:
+- rm -f -- $(LIBOBJ) $(LIBFILE) $(MAINS:=.o) $(MAINS)
+- rm -rf .deps
+-
+-# Executable files
+-%: %.o $(LIBFILE)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< -L . -l $(LIB)
+-
+-# Special executable
+-qrcodegen-test: qrcodegen-test.c $(LIBOBJ:%.o=%.c)
+- $(CC) $(CFLAGS) $(LDFLAGS) -DQRCODEGEN_TEST -o $@ $^
+-
+-# The library
+-$(LIBFILE): $(LIBOBJ)
+- $(AR) -crs $@ -- $^
+-
+-# Object files
+-%.o: %.c .deps/timestamp
+- $(CC) $(CFLAGS) -c -o $@ -MMD -MF .deps/$*.d $<
+-
+-# Have a place to store header dependencies automatically generated by compiler
+-.deps/timestamp:
+- mkdir -p .deps
+- touch .deps/timestamp
+-
+-# Make use of said dependencies if available
+--include .deps/*.d
+diff --git a/cmake/qrcodegen-config.cmake.in b/cmake/qrcodegen-config.cmake.in
+new file mode 100644
+index 0000000..0b82c63
+--- /dev/null
++++ b/cmake/qrcodegen-config.cmake.in
+@@ -0,0 +1,4 @@
++@PACKAGE_INIT@
++
++include("${CMAKE_CURRENT_LIST_DIR}/@QRCODEGEN_NAME@-targets.cmake")
++check_required_components(@QRCODEGEN_NAME@)
+diff --git a/cmake/qrcodegen.pc.in b/cmake/qrcodegen.pc.in
+new file mode 100644
+index 0000000..c68955b
+--- /dev/null
++++ b/cmake/qrcodegen.pc.in
+@@ -0,0 +1,11 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++exec_prefix=${prefix}
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@QRCODEGEN_NAME@
++
++Name: @QRCODEGEN_NAME@
++Description: @CMAKE_PROJECT_DESCRIPTION@
++Version: @CMAKE_PROJECT_VERSION@
++
++Libs: -L${libdir} -l@QRCODEGEN_NAME@
++Cflags: -I${includedir}
+diff --git a/cmake/qrcodegencpp-config.cmake.in b/cmake/qrcodegencpp-config.cmake.in
+new file mode 100644
+index 0000000..3d18f99
+--- /dev/null
++++ b/cmake/qrcodegencpp-config.cmake.in
+@@ -0,0 +1,4 @@
++@PACKAGE_INIT@
++
++include("${CMAKE_CURRENT_LIST_DIR}/@QRCODEGENCPP_NAME@-targets.cmake")
++check_required_components(@QRCODEGENCPP_NAME@)
+diff --git a/cmake/qrcodegencpp.pc.in b/cmake/qrcodegencpp.pc.in
+new file mode 100644
+index 0000000..89db084
+--- /dev/null
++++ b/cmake/qrcodegencpp.pc.in
+@@ -0,0 +1,11 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++exec_prefix=${prefix}
++libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
++includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@/@QRCODEGENCPP_NAME@
++
++Name: @QRCODEGENCPP_NAME@
++Description: @CMAKE_PROJECT_DESCRIPTION@
++Version: @CMAKE_PROJECT_VERSION@
++
++Libs: -L${libdir} -l@QRCODEGENCPP_NAME@
++Cflags: -I${includedir}
+diff --git a/cpp/Makefile b/cpp/Makefile
+deleted file mode 100644
+index 57dc0bf..0000000
+--- a/cpp/Makefile
++++ /dev/null
+@@ -1,84 +0,0 @@
+-#
+-# Makefile for QR Code generator (C++)
+-#
+-# Copyright (c) Project Nayuki. (MIT License)
+-# https://www.nayuki.io/page/qr-code-generator-library
+-#
+-# Permission is hereby granted, free of charge, to any person obtaining a copy of
+-# this software and associated documentation files (the "Software"), to deal in
+-# the Software without restriction, including without limitation the rights to
+-# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+-# the Software, and to permit persons to whom the Software is furnished to do so,
+-# subject to the following conditions:
+-# - The above copyright notice and this permission notice shall be included in
+-# all copies or substantial portions of the Software.
+-# - The Software is provided "as is", without warranty of any kind, express or
+-# implied, including but not limited to the warranties of merchantability,
+-# fitness for a particular purpose and noninfringement. In no event shall the
+-# authors or copyright holders be liable for any claim, damages or other
+-# liability, whether in an action of contract, tort or otherwise, arising from,
+-# out of or in connection with the Software or the use or other dealings in the
+-# Software.
+-#
+-
+-
+-# ---- Configuration options ----
+-
+-# External/implicit variables:
+-# - CXX: The C++ compiler, such as g++ or clang++.
+-# - CXXFLAGS: Any extra user-specified compiler flags (can be blank).
+-
+-# Recommended compiler flags:
+-CXXFLAGS += -std=c++11 -O
+-
+-# Extra flags for diagnostics:
+-# CXXFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address
+-
+-
+-# ---- Controlling make ----
+-
+-# Clear default suffix rules
+-.SUFFIXES:
+-
+-# Don't delete object files
+-.SECONDARY:
+-
+-# Stuff concerning goals
+-.DEFAULT_GOAL = all
+-.PHONY: all clean
+-
+-
+-# ---- Targets to build ----
+-
+-LIB = qrcodegencpp
+-LIBFILE = lib$(LIB).a
+-LIBOBJ = qrcodegen.o
+-MAINS = QrCodeGeneratorDemo
+-
+-# Build all binaries
+-all: $(LIBFILE) $(MAINS)
+-
+-# Delete build output
+-clean:
+- rm -f -- $(LIBOBJ) $(LIBFILE) $(MAINS:=.o) $(MAINS)
+- rm -rf .deps
+-
+-# Executable files
+-%: %.o $(LIBFILE)
+- $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $< -L . -l $(LIB)
+-
+-# The library
+-$(LIBFILE): $(LIBOBJ)
+- $(AR) -crs $@ -- $^
+-
+-# Object files
+-%.o: %.cpp .deps/timestamp
+- $(CXX) $(CXXFLAGS) -c -o $@ -MMD -MF .deps/$*.d $<
+-
+-# Have a place to store header dependencies automatically generated by compiler
+-.deps/timestamp:
+- mkdir -p .deps
+- touch .deps/timestamp
+-
+-# Make use of said dependencies if available
+--include .deps/*.d
+--
+2.41.0
+
diff --git a/gnu/packages/patches/qrcodegen-cpp-make-install.patch b/gnu/packages/patches/qrcodegen-cpp-make-install.patch
deleted file mode 100644
index 4da619d3c8..0000000000
--- a/gnu/packages/patches/qrcodegen-cpp-make-install.patch
+++ /dev/null
@@ -1,448 +0,0 @@
-Make the library installable. Patch copied from pull request:
-
-https://github.com/nayuki/QR-Code-generator/pull/72
-
-From 1625fc1665e1f83eb73c0f5670dcfda96dc0b3e4 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= <tchvatal@suse.com>
-Date: Tue, 3 Dec 2019 11:57:24 +0100
-Subject: [PATCH 1/7] Do not append to C/XX/FLAGS but just set them if not
- defined already
-
----
- c/Makefile | 2 +-
- cpp/Makefile | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/c/Makefile b/c/Makefile
-index fd0c367..b27449c 100644
---- a/c/Makefile
-+++ b/c/Makefile
-@@ -29,7 +29,7 @@
- # - CFLAGS: Any extra user-specified compiler flags (can be blank).
-
- # Recommended compiler flags:
--CFLAGS += -std=c99 -O
-+CFLAGS ?= -std=c99 -O
-
- # Extra flags for diagnostics:
- # CFLAGS += -g -Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -fsanitize=undefined,address
-diff --git a/cpp/Makefile b/cpp/Makefile
-index f83c512..666f976 100644
---- a/cpp/
This message was truncated. Download the full message here.
I
I
iyzsong wrote on 24 May 06:31 +0200
[PATCH 5/5] gnu: obs: Update to 30.1.2.
(address . 71161@debbugs.gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
e16bc7f056cf0872a58d8dd9573467f8d0e951d0.1716524546.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

* gnu/packages/video.scm (obs): Update to 30.1.2.
[arguments]: Add "-DENABLE_QSV11=OFF" to configure-flags. Add MESA
to LD_LIBRARY_PATH for 'obs'.
[inputs]: Add libdatachannel, qrcodegen-cpp and vulkan-headers.
Replace ffmpeg-4 with ffmpeg, Qt 5 with Qt 6.

Change-Id: Id74c52512eb18727b0c8c8a0a7ed4c892a5e76c2
---
gnu/packages/video.scm | 21 ++++++++++++++-------
1 file changed, 14 insertions(+), 7 deletions(-)

Toggle diff (83 lines)
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 2e7ba6d10e..3782198a17 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -109,6 +109,7 @@ (define-module (gnu packages video)
#:use-module (guix build-system waf)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
+ #:use-module (gnu packages aidc)
#:use-module (gnu packages algebra)
#:use-module (gnu packages assembly)
#:use-module (gnu packages audio)
@@ -3965,7 +3966,7 @@ (define-public v4l-utils
(define-public obs
(package
(name "obs")
- (version "29.1.3")
+ (version "30.1.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3975,7 +3976,7 @@ (define-public obs
(file-name (git-file-name name version))
(sha256
(base32
- "192p7m3g8ynbkq3s894w6a0w6gix3k237q5jwqrrr8idwfwwyh0g"))
+ "02pm6397h7l0xhdpscbh1kq8y98zx236z95wvw60kbhq38s0i0ik"))
(patches
(search-patches "obs-modules-location.patch"))))
(build-system cmake-build-system)
@@ -3986,6 +3987,7 @@ (define-public obs
"-DENABLE_UNIT_TESTS=ON"
"-DENABLE_NEW_MPEGTS_OUTPUT=OFF"
"-DENABLE_AJA=OFF"
+ "-DENABLE_QSV11=OFF"
;; Browser plugin requires cef, but it is not packaged yet.
;; <https://bitbucket.org/chromiumembedded/cef/src/master/>
"-DBUILD_BROWSER=OFF")
@@ -3998,6 +4000,9 @@ (define-public obs
`("QT_PLUGIN_PATH" ":" prefix (,plugin-path))
`("LD_LIBRARY_PATH" ":" prefix
(,(string-append #$(this-package-input "vlc")
+ "/lib")
+ ;; TODO: Remove this once our mesa has glvnd support.
+ ,(string-append #$(this-package-input "mesa")
"/lib"))))))))))
(native-search-paths
(list (search-path-specification
@@ -4017,12 +4022,13 @@ (define-public obs
bash-minimal
curl
eudev
- ffmpeg-4
+ ffmpeg
fontconfig
freetype
glib
jack-1
jansson
+ libdatachannel
libglvnd
libva
libx264
@@ -4036,12 +4042,13 @@ (define-public obs
pipewire
pulseaudio
python
- qtbase-5
- qtsvg-5
- qtx11extras
- qtwayland-5
+ qrcodegen-cpp
+ qtbase
+ qtsvg
+ qtwayland
speexdsp
v4l-utils
+ vulkan-headers
vlc
wayland
wayland-protocols
--
2.41.0
A
A
Andrew Tropin wrote on 7 Sep 16:15 +0200
Re: [bug#71161] [PATCH 0/5] obs: Update to 30.1.2
(name . ???)(address . iyzsong@member.fsf.org)
87bk0zpn1u.fsf@trop.in
On 2024-05-24 12:30, iyzsong--- via Guix-patches via wrote:

Toggle quote (36 lines)
> From: ??? <iyzsong@member.fsf.org>
>
> Hello, these patches update OBS studio to its latest version.
>
> qrcodegen-cpp needs to be updated for obs, need check telegram-desktop
> and libreoffice if they build okay with the newer qrcodegen-cpp. I haven't
> check that.
>
> Add a LD_LIBRARY_PATH hack for mesa, without it obs won't get a
> display via libglvnd's libEGL. It seems we need build mesa with glvnd
> support (which will bring egl_vendor.d/50_mesa.json for libglvend to
> consume, and rename libEGL.so to libEGL_mesa.so).
>
>
> Sou Bunnbu (???) (5):
> gnu: Add plog.
> gnu: Add libjuice.
> gnu: Add libdatachannel.
> gnu: qrcodegen-cpp: Update to 1.8.0.
> gnu: obs: Update to 30.1.2.
>
> gnu/local.mk | 2 +-
> gnu/packages/aidc.scm | 22 +-
> gnu/packages/logging.scm | 25 +
> .../patches/qrcodegen-cpp-cmake.patch | 506 ++++++++++++++++++
> .../patches/qrcodegen-cpp-make-install.patch | 448 ----------------
> gnu/packages/video.scm | 21 +-
> gnu/packages/web.scm | 53 ++
> 7 files changed, 606 insertions(+), 471 deletions(-)
> create mode 100644 gnu/packages/patches/qrcodegen-cpp-cmake.patch
> delete mode 100644 gnu/packages/patches/qrcodegen-cpp-make-install.patch
>
>
> base-commit: 9901416233867233192b63fde7f616751127b189


Applied, pushed as

Thank you very much for the patch!

--
Best regards,
Andrew Tropin
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEKEGaxlA4dEDH6S/6IgjSCVjB3rAFAmbcYA0ACgkQIgjSCVjB
3rAGWQ/+PcR8XzJEGMcQtTu3rAOtqewQddQkF/yKRSmILnL1nL+NhmpyTb5gUati
KiPOxXxx4bWnKqu+AR+cKashYjMtXMChtxqxA5t/lZAXgcEDQZZUBVss165pVDc6
ZQS2XAB+MCV7FSHqhVoifgg0wsm4WWHE+sYwPURq+9vIFGXXeQiK3CiOz5jDQb5r
JwrM7Ds+U38sKi2ymVb1+LxuWu9cFOI9lvyUlyS1Qvy4raHP3LOgUecLdPmLH6/W
0PUojfTmE3fhsi/SDUT7OE9iwPULvvbe2cqc9J3SghpGonh2W06WzPJJ69lUbny/
OQcEWuNbLrpcUtVG1RaXrLHpQCGUe1lYr76fRQNbLxEq3h1W7boSRs2J4p9iKXwR
T+VRCySFkGu5tHHS2KLcqr4Ocz8fMB8jNQibDIP/ERvDwEbMnP9wgBTuxipLNMeP
3KPcMygyn/Rj9A0IpPocblVKKdAXURVAzefYwkLihD1AFMMfrJvwZ8RwgvSy1MBN
NC1TX5yJ/jSz1a7cf2Mgx0Xx1AKu4+7K6fBZfzdGjJded007ZbP87l80ui1fvxqw
Uzk4qwLPxEKMNDDoTmGEWq2VlC++g94tEufYkNLfWtzg9IZ6jIXn0psZ0eFB52kG
5A8A1FHGkyaRWlXPn9FaGybr2flIj4XQ/MKWPCjQiamAJpspaHw=
=OvBX
-----END PGP SIGNATURE-----

Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 71161@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 71161
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch