diff options
Diffstat (limited to 'meta/recipes-devtools/cdrtools')
3 files changed, 98 insertions, 2 deletions
diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb b/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb index c08da6cdca..9dc5caf87c 100644 --- a/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb +++ b/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb @@ -3,25 +3,43 @@ # Released under the MIT license (see packages/COPYING) SUMMARY = "A set of tools for CD recording, including cdrecord" HOMEPAGE = "http://sourceforge.net/projects/cdrtools/" +DESCRIPTION = "cdrecord tool is Highly portable CD/DVD/BluRay command line recording software." SECTION = "console/utils" -LICENSE = "GPLv2 & CDDL-1.0 & LGPLv2.1+" +LICENSE = "GPL-2.0-only & CDDL-1.0 & LGPL-2.1-or-later" LIC_FILES_CHKSUM = "file://COPYING;md5=32f68170be424c2cd64804337726b312" +DEPENDS += "gnu-config-native" + SRC_URI = " \ ${SOURCEFORGE_MIRROR}/project/cdrtools/cdrtools-${PV}.tar.bz2 \ file://0001-Don-t-set-uid-gid-during-install.patch \ + file://riscv64-linux-gcc.rul \ + file://gcc14-fix.patch \ " SRC_URI[md5sum] = "7d45c5b7e1f78d85d1583b361aee6e8b" SRC_URI[sha256sum] = "ed282eb6276c4154ce6a0b5dee0bdb81940d0cbbfc7d03f769c4735ef5f5860f" -EXTRA_OEMAKE = "-e MAKEFLAGS=" +EXTRA_OEMAKE = "-e MAKEFLAGS= CPPOPTX='${CPPFLAGS}' COPTX='${CFLAGS}' C++OPTX='${CXXFLAGS}' LDOPTX='${LDFLAGS}' GMAKE_NOWARN='true'" # Stop failures when 'cc' can't be found export ac_cv_prog_CC = "${CC}" inherit native +# Use -std=gnu89 to build with gcc-14 (https://bugs.gentoo.org/903876) +# this needs to be after native inherit (which sets CFLAGS to BUILD_CFLAGS) +CFLAGS += "-std=gnu89" + +do_configure() { + # cdda2wav does not build with GCC 14 + rm -f ${S}/TARGETS/55cdda2wav + + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/autoconf + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/autoconf + install -m 0644 ${UNPACKDIR}/riscv64-linux-gcc.rul ${S}/RULES/ +} + do_install() { make install GMAKE_NOWARN=true INS_BASE=${prefix} DESTDIR=${D} } diff --git a/meta/recipes-devtools/cdrtools/cdrtools/gcc14-fix.patch b/meta/recipes-devtools/cdrtools/cdrtools/gcc14-fix.patch new file mode 100644 index 0000000000..ce02bb8bcf --- /dev/null +++ b/meta/recipes-devtools/cdrtools/cdrtools/gcc14-fix.patch @@ -0,0 +1,13 @@ +Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> +Upstream-Status: Inappropriate [native] +--- cdrtools-3.01/autoconf/configure~ 2015-07-06 23:41:27.000000000 +0200 ++++ cdrtools-3.01/autoconf/configure 2024-05-01 09:37:40.897253690 +0200 +@@ -1205,7 +1205,7 @@ + #line 1206 "configure" + #include "confdefs.h" + +-main(){return(0);} ++int main(){return(0);} + EOF + if { (eval echo configure:1211: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + ac_cv_prog_cc_works=yes diff --git a/meta/recipes-devtools/cdrtools/cdrtools/riscv64-linux-gcc.rul b/meta/recipes-devtools/cdrtools/cdrtools/riscv64-linux-gcc.rul new file mode 100644 index 0000000000..3e930225dc --- /dev/null +++ b/meta/recipes-devtools/cdrtools/cdrtools/riscv64-linux-gcc.rul @@ -0,0 +1,65 @@ +#ident "@(#)i586-linux-gcc.rul 1.18 18/11/07 " +########################################################################### +# Written 1996-2018 by J. Schilling +########################################################################### +# +# Platform dependent MACROS for Linux +# +########################################################################### +# Copyright (c) J. Schilling +########################################################################### +# The contents of this file are subject to the terms of the +# Common Development and Distribution License, Version 1.0 only +# (the "License"). You may not use this file except in compliance +# with the License. +# +# See the file CDDL.Schily.txt in this distribution for details. +# A copy of the CDDL is also available via the Internet at +# http://www.opensource.org/licenses/cddl1.txt +# +# When distributing Covered Code, include this CDDL HEADER in each +# file and include the License file CDDL.Schily.txt from this distribution. +########################################################################### +include $(SRCROOT)/$(RULESDIR)/rules.prg +########################################################################### +include $(SRCROOT)/$(RULESDIR)/cc-$(C_ARCH).rul + +# +# LINUX_SRC_INCLUDE is defined in DEFAULTS/Defaults.linux +# +INCDIRSX += $(LINUX_SRC_INCLUDE) +OSDEFS += + +KDEFINES= -DKERNEL -D_KERNEL + +LIB_PREFIX= lib +LIB_SUFFIX= .a +SHL_SUFFIX= .so.$(DYNMAJOR).$(DYNMINOR) + +LIB_SOCKET= +LIB_MATH= -lm +LIB_KVM= + +# +# Sunpro C/C++ run on Solaris and Linux and both have linkers +# that support mapfiles +# +MAPVERS= $(_MAPVERS) # This enables to use mapfiles +# +# The GNU linker is buggy and does not like the official order in linker map +# files for symbol versioning. The following command reverses the order of +# the version names in the linker map file. +# +MAPFILE_POST= | sed 's/^SCHILY/+SCHILY/' | tr '\012' '@' | tr '+' '\012' | sort -V | tr '@' '\012' + +#LDOPTS= $(LIBS_PATH) $(LDPATH) $(RUNPATH:-R%=-Wl,-R%) +# +# Uncomment the next line in case you are on an old Linux version that +# does not support the -R linker flag. +# +#LDOPTS= $(LIBS_PATH) $(LDPATH) +LDOPTMAP= $(PMAPVERS:%=-Wl,--version-script=%) +LDOPTDYN= -shared -Wl,-soname,$(TARGET) $(LDOPTMAP) + +LORDER= echo +TSORT= cat |