- update to 1.2.4 fixes rhbz #1579090
This commit is contained in:
parent
9d2be5dc64
commit
d3022a5634
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
||||
cdrdao-1.2.3.tar.bz2
|
||||
/cdrdao-1.2.4.tar.bz2
|
||||
|
418
cdrdao-1.2.4-ax_pthread.patch
Normal file
418
cdrdao-1.2.4-ax_pthread.patch
Normal file
@ -0,0 +1,418 @@
|
||||
Use AX_PTHREAD for finding proper pthread flags. Forcibly add these flags
|
||||
to CFLAGS, CXXFLAGS and LIBS.
|
||||
Also use AM_PROG_AR to detect proper ar
|
||||
See also: https://bugs.gentoo.org/548004
|
||||
|
||||
--- cdrdao-1.2.4/configure.ac
|
||||
+++ cdrdao-1.2.4/configure.ac
|
||||
@@ -2,6 +2,7 @@
|
||||
AC_REVISION($Revision: 1.26 $)dnl
|
||||
|
||||
AC_INIT(cdrdao, 1.2.4)
|
||||
+AC_CONFIG_MACRO_DIR([m4])
|
||||
|
||||
AC_CONFIG_SRCDIR(dao/main.cc)
|
||||
AM_INIT_AUTOMAKE
|
||||
@@ -32,7 +33,7 @@
|
||||
AC_PROG_CPP
|
||||
AC_PROG_INSTALL
|
||||
AC_PROG_RANLIB
|
||||
-AC_CHECK_PROG(AR,ar,ar)
|
||||
+AM_PROG_AR
|
||||
AC_PROG_MAKE_SET
|
||||
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
|
||||
|
||||
@@ -113,7 +114,10 @@
|
||||
fi
|
||||
|
||||
if test "$use_pthreads" = yes; then
|
||||
- AC_CHECK_FUNC(pthread_create,have_pthread_std=yes,have_pthread_std=no)
|
||||
+ AX_PTHREAD([have_pthread_std=yes],[have_pthread_std=no])
|
||||
+ LIBS="$PTHREAD_LIBS $PTHREAD_CFLAGS $LIBS"
|
||||
+ CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
||||
+ CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"
|
||||
|
||||
if test "$have_pthread_std" = yes; then
|
||||
AC_DEFINE(USE_POSIX_THREADS,1,"")
|
||||
--- cdrdao-1.2.4/m4/ax_pthread.m4
|
||||
+++ cdrdao-1.2.4/m4/ax_pthread.m4
|
||||
@@ -0,0 +1,332 @@
|
||||
+# ===========================================================================
|
||||
+# http://www.gnu.org/software/autoconf-archive/ax_pthread.html
|
||||
+# ===========================================================================
|
||||
+#
|
||||
+# SYNOPSIS
|
||||
+#
|
||||
+# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
|
||||
+#
|
||||
+# DESCRIPTION
|
||||
+#
|
||||
+# This macro figures out how to build C programs using POSIX threads. It
|
||||
+# sets the PTHREAD_LIBS output variable to the threads library and linker
|
||||
+# flags, and the PTHREAD_CFLAGS output variable to any special C compiler
|
||||
+# flags that are needed. (The user can also force certain compiler
|
||||
+# flags/libs to be tested by setting these environment variables.)
|
||||
+#
|
||||
+# Also sets PTHREAD_CC to any special C compiler that is needed for
|
||||
+# multi-threaded programs (defaults to the value of CC otherwise). (This
|
||||
+# is necessary on AIX to use the special cc_r compiler alias.)
|
||||
+#
|
||||
+# NOTE: You are assumed to not only compile your program with these flags,
|
||||
+# but also link it with them as well. e.g. you should link with
|
||||
+# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS
|
||||
+#
|
||||
+# If you are only building threads programs, you may wish to use these
|
||||
+# variables in your default LIBS, CFLAGS, and CC:
|
||||
+#
|
||||
+# LIBS="$PTHREAD_LIBS $LIBS"
|
||||
+# CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
||||
+# CC="$PTHREAD_CC"
|
||||
+#
|
||||
+# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant
|
||||
+# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name
|
||||
+# (e.g. PTHREAD_CREATE_UNDETACHED on AIX).
|
||||
+#
|
||||
+# Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the
|
||||
+# PTHREAD_PRIO_INHERIT symbol is defined when compiling with
|
||||
+# PTHREAD_CFLAGS.
|
||||
+#
|
||||
+# ACTION-IF-FOUND is a list of shell commands to run if a threads library
|
||||
+# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it
|
||||
+# is not found. If ACTION-IF-FOUND is not specified, the default action
|
||||
+# will define HAVE_PTHREAD.
|
||||
+#
|
||||
+# Please let the authors know if this macro fails on any platform, or if
|
||||
+# you have any other suggestions or comments. This macro was based on work
|
||||
+# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help
|
||||
+# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by
|
||||
+# Alejandro Forero Cuervo to the autoconf macro repository. We are also
|
||||
+# grateful for the helpful feedback of numerous users.
|
||||
+#
|
||||
+# Updated for Autoconf 2.68 by Daniel Richard G.
|
||||
+#
|
||||
+# LICENSE
|
||||
+#
|
||||
+# Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
|
||||
+# Copyright (c) 2011 Daniel Richard G. <skunk@iSKUNK.ORG>
|
||||
+#
|
||||
+# This program is free software: you can redistribute it and/or modify it
|
||||
+# under the terms of the GNU General Public License as published by the
|
||||
+# Free Software Foundation, either version 3 of the License, or (at your
|
||||
+# option) any later version.
|
||||
+#
|
||||
+# This program is distributed in the hope that it will be useful, but
|
||||
+# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||
+# Public License for more details.
|
||||
+#
|
||||
+# You should have received a copy of the GNU General Public License along
|
||||
+# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
+#
|
||||
+# As a special exception, the respective Autoconf Macro's copyright owner
|
||||
+# gives unlimited permission to copy, distribute and modify the configure
|
||||
+# scripts that are the output of Autoconf when processing the Macro. You
|
||||
+# need not follow the terms of the GNU General Public License when using
|
||||
+# or distributing such scripts, even though portions of the text of the
|
||||
+# Macro appear in them. The GNU General Public License (GPL) does govern
|
||||
+# all other use of the material that constitutes the Autoconf Macro.
|
||||
+#
|
||||
+# This special exception to the GPL applies to versions of the Autoconf
|
||||
+# Macro released by the Autoconf Archive. When you make and distribute a
|
||||
+# modified version of the Autoconf Macro, you may extend this special
|
||||
+# exception to the GPL to apply to your modified version as well.
|
||||
+
|
||||
+#serial 21
|
||||
+
|
||||
+AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD])
|
||||
+AC_DEFUN([AX_PTHREAD], [
|
||||
+AC_REQUIRE([AC_CANONICAL_HOST])
|
||||
+AC_LANG_PUSH([C])
|
||||
+ax_pthread_ok=no
|
||||
+
|
||||
+# We used to check for pthread.h first, but this fails if pthread.h
|
||||
+# requires special compiler flags (e.g. on True64 or Sequent).
|
||||
+# It gets checked for in the link test anyway.
|
||||
+
|
||||
+# First of all, check if the user has set any of the PTHREAD_LIBS,
|
||||
+# etcetera environment variables, and if threads linking works using
|
||||
+# them:
|
||||
+if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then
|
||||
+ save_CFLAGS="$CFLAGS"
|
||||
+ CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
||||
+ save_LIBS="$LIBS"
|
||||
+ LIBS="$PTHREAD_LIBS $LIBS"
|
||||
+ AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS])
|
||||
+ AC_TRY_LINK_FUNC([pthread_join], [ax_pthread_ok=yes])
|
||||
+ AC_MSG_RESULT([$ax_pthread_ok])
|
||||
+ if test x"$ax_pthread_ok" = xno; then
|
||||
+ PTHREAD_LIBS=""
|
||||
+ PTHREAD_CFLAGS=""
|
||||
+ fi
|
||||
+ LIBS="$save_LIBS"
|
||||
+ CFLAGS="$save_CFLAGS"
|
||||
+fi
|
||||
+
|
||||
+# We must check for the threads library under a number of different
|
||||
+# names; the ordering is very important because some systems
|
||||
+# (e.g. DEC) have both -lpthread and -lpthreads, where one of the
|
||||
+# libraries is broken (non-POSIX).
|
||||
+
|
||||
+# Create a list of thread flags to try. Items starting with a "-" are
|
||||
+# C compiler flags, and other items are library names, except for "none"
|
||||
+# which indicates that we try without any flags at all, and "pthread-config"
|
||||
+# which is a program returning the flags for the Pth emulation library.
|
||||
+
|
||||
+ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config"
|
||||
+
|
||||
+# The ordering *is* (sometimes) important. Some notes on the
|
||||
+# individual items follow:
|
||||
+
|
||||
+# pthreads: AIX (must check this before -lpthread)
|
||||
+# none: in case threads are in libc; should be tried before -Kthread and
|
||||
+# other compiler flags to prevent continual compiler warnings
|
||||
+# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h)
|
||||
+# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able)
|
||||
+# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread)
|
||||
+# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads)
|
||||
+# -pthreads: Solaris/gcc
|
||||
+# -mthreads: Mingw32/gcc, Lynx/gcc
|
||||
+# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it
|
||||
+# doesn't hurt to check since this sometimes defines pthreads too;
|
||||
+# also defines -D_REENTRANT)
|
||||
+# ... -mt is also the pthreads flag for HP/aCC
|
||||
+# pthread: Linux, etcetera
|
||||
+# --thread-safe: KAI C++
|
||||
+# pthread-config: use pthread-config program (for GNU Pth library)
|
||||
+
|
||||
+case ${host_os} in
|
||||
+ solaris*)
|
||||
+
|
||||
+ # On Solaris (at least, for some versions), libc contains stubbed
|
||||
+ # (non-functional) versions of the pthreads routines, so link-based
|
||||
+ # tests will erroneously succeed. (We need to link with -pthreads/-mt/
|
||||
+ # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather
|
||||
+ # a function called by this macro, so we could check for that, but
|
||||
+ # who knows whether they'll stub that too in a future libc.) So,
|
||||
+ # we'll just look for -pthreads and -lpthread first:
|
||||
+
|
||||
+ ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags"
|
||||
+ ;;
|
||||
+
|
||||
+ darwin*)
|
||||
+ ax_pthread_flags="-pthread $ax_pthread_flags"
|
||||
+ ;;
|
||||
+esac
|
||||
+
|
||||
+# Clang doesn't consider unrecognized options an error unless we specify
|
||||
+# -Werror. We throw in some extra Clang-specific options to ensure that
|
||||
+# this doesn't happen for GCC, which also accepts -Werror.
|
||||
+
|
||||
+AC_MSG_CHECKING([if compiler needs -Werror to reject unknown flags])
|
||||
+save_CFLAGS="$CFLAGS"
|
||||
+ax_pthread_extra_flags="-Werror"
|
||||
+CFLAGS="$CFLAGS $ax_pthread_extra_flags -Wunknown-warning-option -Wsizeof-array-argument"
|
||||
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([int foo(void);],[foo()])],
|
||||
+ [AC_MSG_RESULT([yes])],
|
||||
+ [ax_pthread_extra_flags=
|
||||
+ AC_MSG_RESULT([no])])
|
||||
+CFLAGS="$save_CFLAGS"
|
||||
+
|
||||
+if test x"$ax_pthread_ok" = xno; then
|
||||
+for flag in $ax_pthread_flags; do
|
||||
+
|
||||
+ case $flag in
|
||||
+ none)
|
||||
+ AC_MSG_CHECKING([whether pthreads work without any flags])
|
||||
+ ;;
|
||||
+
|
||||
+ -*)
|
||||
+ AC_MSG_CHECKING([whether pthreads work with $flag])
|
||||
+ PTHREAD_CFLAGS="$flag"
|
||||
+ ;;
|
||||
+
|
||||
+ pthread-config)
|
||||
+ AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no])
|
||||
+ if test x"$ax_pthread_config" = xno; then continue; fi
|
||||
+ PTHREAD_CFLAGS="`pthread-config --cflags`"
|
||||
+ PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`"
|
||||
+ ;;
|
||||
+
|
||||
+ *)
|
||||
+ AC_MSG_CHECKING([for the pthreads library -l$flag])
|
||||
+ PTHREAD_LIBS="-l$flag"
|
||||
+ ;;
|
||||
+ esac
|
||||
+
|
||||
+ save_LIBS="$LIBS"
|
||||
+ save_CFLAGS="$CFLAGS"
|
||||
+ LIBS="$PTHREAD_LIBS $LIBS"
|
||||
+ CFLAGS="$CFLAGS $PTHREAD_CFLAGS $ax_pthread_extra_flags"
|
||||
+
|
||||
+ # Check for various functions. We must include pthread.h,
|
||||
+ # since some functions may be macros. (On the Sequent, we
|
||||
+ # need a special flag -Kthread to make this header compile.)
|
||||
+ # We check for pthread_join because it is in -lpthread on IRIX
|
||||
+ # while pthread_create is in libc. We check for pthread_attr_init
|
||||
+ # due to DEC craziness with -lpthreads. We check for
|
||||
+ # pthread_cleanup_push because it is one of the few pthread
|
||||
+ # functions on Solaris that doesn't have a non-functional libc stub.
|
||||
+ # We try pthread_create on general principles.
|
||||
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>
|
||||
+ static void routine(void *a) { a = 0; }
|
||||
+ static void *start_routine(void *a) { return a; }],
|
||||
+ [pthread_t th; pthread_attr_t attr;
|
||||
+ pthread_create(&th, 0, start_routine, 0);
|
||||
+ pthread_join(th, 0);
|
||||
+ pthread_attr_init(&attr);
|
||||
+ pthread_cleanup_push(routine, 0);
|
||||
+ pthread_cleanup_pop(0) /* ; */])],
|
||||
+ [ax_pthread_ok=yes],
|
||||
+ [])
|
||||
+
|
||||
+ LIBS="$save_LIBS"
|
||||
+ CFLAGS="$save_CFLAGS"
|
||||
+
|
||||
+ AC_MSG_RESULT([$ax_pthread_ok])
|
||||
+ if test "x$ax_pthread_ok" = xyes; then
|
||||
+ break;
|
||||
+ fi
|
||||
+
|
||||
+ PTHREAD_LIBS=""
|
||||
+ PTHREAD_CFLAGS=""
|
||||
+done
|
||||
+fi
|
||||
+
|
||||
+# Various other checks:
|
||||
+if test "x$ax_pthread_ok" = xyes; then
|
||||
+ save_LIBS="$LIBS"
|
||||
+ LIBS="$PTHREAD_LIBS $LIBS"
|
||||
+ save_CFLAGS="$CFLAGS"
|
||||
+ CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
||||
+
|
||||
+ # Detect AIX lossage: JOINABLE attribute is called UNDETACHED.
|
||||
+ AC_MSG_CHECKING([for joinable pthread attribute])
|
||||
+ attr_name=unknown
|
||||
+ for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do
|
||||
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h>],
|
||||
+ [int attr = $attr; return attr /* ; */])],
|
||||
+ [attr_name=$attr; break],
|
||||
+ [])
|
||||
+ done
|
||||
+ AC_MSG_RESULT([$attr_name])
|
||||
+ if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
|
||||
+ AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], [$attr_name],
|
||||
+ [Define to necessary symbol if this constant
|
||||
+ uses a non-standard name on your system.])
|
||||
+ fi
|
||||
+
|
||||
+ AC_MSG_CHECKING([if more special flags are required for pthreads])
|
||||
+ flag=no
|
||||
+ case ${host_os} in
|
||||
+ aix* | freebsd* | darwin*) flag="-D_THREAD_SAFE";;
|
||||
+ osf* | hpux*) flag="-D_REENTRANT";;
|
||||
+ solaris*)
|
||||
+ if test "$GCC" = "yes"; then
|
||||
+ flag="-D_REENTRANT"
|
||||
+ else
|
||||
+ # TODO: What about Clang on Solaris?
|
||||
+ flag="-mt -D_REENTRANT"
|
||||
+ fi
|
||||
+ ;;
|
||||
+ esac
|
||||
+ AC_MSG_RESULT([$flag])
|
||||
+ if test "x$flag" != xno; then
|
||||
+ PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
|
||||
+ fi
|
||||
+
|
||||
+ AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
|
||||
+ [ax_cv_PTHREAD_PRIO_INHERIT], [
|
||||
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>]],
|
||||
+ [[int i = PTHREAD_PRIO_INHERIT;]])],
|
||||
+ [ax_cv_PTHREAD_PRIO_INHERIT=yes],
|
||||
+ [ax_cv_PTHREAD_PRIO_INHERIT=no])
|
||||
+ ])
|
||||
+ AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes"],
|
||||
+ [AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.])])
|
||||
+
|
||||
+ LIBS="$save_LIBS"
|
||||
+ CFLAGS="$save_CFLAGS"
|
||||
+
|
||||
+ # More AIX lossage: compile with *_r variant
|
||||
+ if test "x$GCC" != xyes; then
|
||||
+ case $host_os in
|
||||
+ aix*)
|
||||
+ AS_CASE(["x/$CC"],
|
||||
+ [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6],
|
||||
+ [#handle absolute path differently from PATH based program lookup
|
||||
+ AS_CASE(["x$CC"],
|
||||
+ [x/*],
|
||||
+ [AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"])],
|
||||
+ [AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC])])])
|
||||
+ ;;
|
||||
+ esac
|
||||
+ fi
|
||||
+fi
|
||||
+
|
||||
+test -n "$PTHREAD_CC" || PTHREAD_CC="$CC"
|
||||
+
|
||||
+AC_SUBST([PTHREAD_LIBS])
|
||||
+AC_SUBST([PTHREAD_CFLAGS])
|
||||
+AC_SUBST([PTHREAD_CC])
|
||||
+
|
||||
+# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
|
||||
+if test x"$ax_pthread_ok" = xyes; then
|
||||
+ ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1])
|
||||
+ :
|
||||
+else
|
||||
+ ax_pthread_ok=no
|
||||
+ $2
|
||||
+fi
|
||||
+AC_LANG_POP
|
||||
+])dnl AX_PTHREAD
|
||||
--- cdrdao-1.2.4/m4/gconf-2.m4
|
||||
+++ cdrdao-1.2.4/m4/gconf-2.m4
|
||||
@@ -0,0 +1,44 @@
|
||||
+dnl AM_GCONF_SOURCE_2
|
||||
+dnl Defines GCONF_SCHEMA_CONFIG_SOURCE which is where you should install schemas
|
||||
+dnl (i.e. pass to gconftool-2
|
||||
+dnl Defines GCONF_SCHEMA_FILE_DIR which is a filesystem directory where
|
||||
+dnl you should install foo.schemas files
|
||||
+dnl
|
||||
+
|
||||
+AC_DEFUN([AM_GCONF_SOURCE_2],
|
||||
+[
|
||||
+ if test "x$GCONF_SCHEMA_INSTALL_SOURCE" = "x"; then
|
||||
+ GCONF_SCHEMA_CONFIG_SOURCE=`gconftool-2 --get-default-source`
|
||||
+ else
|
||||
+ GCONF_SCHEMA_CONFIG_SOURCE=$GCONF_SCHEMA_INSTALL_SOURCE
|
||||
+ fi
|
||||
+
|
||||
+ AC_ARG_WITH([gconf-source],
|
||||
+ AC_HELP_STRING([--with-gconf-source=sourceaddress],
|
||||
+ [Config database for installing schema files.]),
|
||||
+ [GCONF_SCHEMA_CONFIG_SOURCE="$withval"],)
|
||||
+
|
||||
+ AC_SUBST(GCONF_SCHEMA_CONFIG_SOURCE)
|
||||
+ AC_MSG_RESULT([Using config source $GCONF_SCHEMA_CONFIG_SOURCE for schema installation])
|
||||
+
|
||||
+ if test "x$GCONF_SCHEMA_FILE_DIR" = "x"; then
|
||||
+ GCONF_SCHEMA_FILE_DIR='$(sysconfdir)/gconf/schemas'
|
||||
+ fi
|
||||
+
|
||||
+ AC_ARG_WITH([gconf-schema-file-dir],
|
||||
+ AC_HELP_STRING([--with-gconf-schema-file-dir=dir],
|
||||
+ [Directory for installing schema files.]),
|
||||
+ [GCONF_SCHEMA_FILE_DIR="$withval"],)
|
||||
+
|
||||
+ AC_SUBST(GCONF_SCHEMA_FILE_DIR)
|
||||
+ AC_MSG_RESULT([Using $GCONF_SCHEMA_FILE_DIR as install directory for schema files])
|
||||
+
|
||||
+ AC_ARG_ENABLE(schemas-install,
|
||||
+ AC_HELP_STRING([--disable-schemas-install],
|
||||
+ [Disable the schemas installation]),
|
||||
+ [case ${enableval} in
|
||||
+ yes|no) ;;
|
||||
+ *) AC_MSG_ERROR([bad value ${enableval} for --enable-schemas-install]) ;;
|
||||
+ esac])
|
||||
+ AM_CONDITIONAL([GCONF_SCHEMAS_INSTALL], [test "$enable_schemas_install" != no])
|
||||
+])
|
130
cdrdao-1.2.4-wformat-security.patch
Normal file
130
cdrdao-1.2.4-wformat-security.patch
Normal file
@ -0,0 +1,130 @@
|
||||
Fix -Werror=format-security errors
|
||||
Also fix incorrect printf() format specifiers
|
||||
https://bugs.gentoo.org/show_bug.cgi?id=520988
|
||||
|
||||
* gen.c: In function 'genHdr':
|
||||
* gen.c:3869:17: error: format not a string literal and no format arguments [-Werror=format-security]
|
||||
|
||||
--- cdrdao-1.2.4/pccts/antlr/bits.c
|
||||
+++ cdrdao-1.2.4/pccts/antlr/bits.c
|
||||
@@ -574,13 +574,13 @@
|
||||
else
|
||||
fprintf(DefFile, "extern SetWordType zzerr%d[];\n", esetnum);
|
||||
if ( name!=NULL ) {
|
||||
- fprintf(ErrFile, "SetWordType %s%s[%d] = {",
|
||||
+ fprintf(ErrFile, "SetWordType %s%s[%lu] = {",
|
||||
name,
|
||||
suffix,
|
||||
NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
}
|
||||
else {
|
||||
- fprintf(ErrFile, "SetWordType zzerr%d[%d] = {",
|
||||
+ fprintf(ErrFile, "SetWordType zzerr%d[%lu] = {",
|
||||
esetnum,
|
||||
NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
}
|
||||
@@ -642,20 +642,20 @@
|
||||
esetnum++;
|
||||
|
||||
if ( name!=NULL ) {
|
||||
- fprintf(Parser_h, "\tstatic SetWordType %s%s[%d];\n", name, suffix,
|
||||
+ fprintf(Parser_h, "\tstatic SetWordType %s%s[%lu];\n", name, suffix,
|
||||
NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
- fprintf(Parser_c, "SetWordType %s::%s%s[%d] = {",
|
||||
+ fprintf(Parser_c, "SetWordType %s::%s%s[%lu] = {",
|
||||
CurrentClassName,
|
||||
name,
|
||||
suffix,
|
||||
NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
}
|
||||
else {
|
||||
- fprintf(Parser_c, "SetWordType %s::err%d[%d] = {",
|
||||
+ fprintf(Parser_c, "SetWordType %s::err%d[%lu] = {",
|
||||
CurrentClassName,
|
||||
esetnum,
|
||||
NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
- fprintf(Parser_h, "\tstatic SetWordType err%d[%d];\n", esetnum,
|
||||
+ fprintf(Parser_h, "\tstatic SetWordType err%d[%lu];\n", esetnum,
|
||||
NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
}
|
||||
|
||||
@@ -788,7 +788,7 @@
|
||||
|
||||
/* Build constructors */
|
||||
fprintf(Parser_c, "\n%s::", CurrentClassName);
|
||||
- fprintf(Parser_c, "%s(ANTLRTokenBuffer *input) : %s(input,%d,%d,%d,%d)\n",
|
||||
+ fprintf(Parser_c, "%s(ANTLRTokenBuffer *input) : %s(input,%d,%d,%d,%lu)\n",
|
||||
CurrentClassName,
|
||||
(BaseClassName == NULL ? "ANTLRParser" : BaseClassName),
|
||||
OutputLL_k,
|
||||
@@ -913,7 +913,7 @@
|
||||
#ifdef DUM
|
||||
if ( LexGen ) fprintf(ErrFile, "#define zzEOF_TOKEN %d\n", (TokenInd!=NULL?TokenInd[EofToken]:EofToken));
|
||||
#endif
|
||||
- fprintf(ErrFile, "#define zzSET_SIZE %d\n", NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
+ fprintf(ErrFile, "#define zzSET_SIZE %lu\n", NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
if ( DemandLookahead ) fprintf(ErrFile, "#define DEMAND_LOOK\n");
|
||||
fprintf(ErrFile, "#include \"antlr.h\"\n");
|
||||
if ( GenAST ) fprintf(ErrFile, "#include \"ast.h\"\n");
|
||||
--- cdrdao-1.2.4/pccts/antlr/gen.c
|
||||
+++ cdrdao-1.2.4/pccts/antlr/gen.c
|
||||
@@ -159,7 +159,7 @@
|
||||
#define gen6(s,a,b,c,d,e,f) {tab(); fprintf(output, s,a,b,c,d,e,f);}
|
||||
#define gen7(s,a,b,c,d,e,f,g) {tab(); fprintf(output, s,a,b,c,d,e,f,g);}
|
||||
|
||||
-#define _gen(s) {fprintf(output, s);}
|
||||
+#define _gen(s) {fprintf(output, "%s", s);}
|
||||
#define _gen1(s,a) {fprintf(output, s,a);}
|
||||
#define _gen2(s,a,b) {fprintf(output, s,a,b);}
|
||||
#define _gen3(s,a,b,c) {fprintf(output, s,a,b,c);}
|
||||
@@ -3911,7 +3911,7 @@
|
||||
}
|
||||
#endif
|
||||
/* ###WARNING: This will have to change when SetWordSize changes */
|
||||
- if ( !GenCC ) _gen1("#define zzSET_SIZE %d\n", NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
+ if ( !GenCC ) _gen1("#define zzSET_SIZE %lu\n", NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
if (TraceGen) {
|
||||
_gen("#ifndef zzTRACE_RULES\n"); /* MR20 */
|
||||
_gen("#define zzTRACE_RULES\n"); /* MR20 */
|
||||
@@ -4125,7 +4125,7 @@
|
||||
if ( LexGen ) fprintf(f, "#define zzEOF_TOKEN %d\n", (TokenInd!=NULL?TokenInd[EofToken]:EofToken));
|
||||
#endif
|
||||
/* ###WARNING: This will have to change when SetWordSize changes */
|
||||
- fprintf(f, "#define zzSET_SIZE %d\n", NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
+ fprintf(f, "#define zzSET_SIZE %lu\n", NumWords(TokenNum-1)*sizeof(unsigned));
|
||||
if (TraceGen) {
|
||||
fprintf(f,"#ifndef zzTRACE_RULES\n"); /* MR20 */
|
||||
fprintf(f,"#define zzTRACE_RULES\n"); /* MR20 */
|
||||
--- cdrdao-1.2.4/pccts/antlr/set.c
|
||||
+++ cdrdao-1.2.4/pccts/antlr/set.c
|
||||
@@ -263,7 +263,7 @@
|
||||
static set a;
|
||||
|
||||
if ( b == nil ) return( empty );
|
||||
- set_new(a, b);
|
||||
+ set_new(a, (long unsigned int) b);
|
||||
a.setword[DIVWORD(b)] = bitmask[MODWORD(b)];
|
||||
|
||||
return(a);
|
||||
--- cdrdao-1.2.4/pccts/dlg/set.c
|
||||
+++ cdrdao-1.2.4/pccts/dlg/set.c
|
||||
@@ -263,7 +263,7 @@
|
||||
static set a;
|
||||
|
||||
if ( b == nil ) return( empty );
|
||||
- set_new(a, b);
|
||||
+ set_new(a, (long unsigned int) b);
|
||||
a.setword[DIVWORD(b)] = bitmask[MODWORD(b)];
|
||||
|
||||
return(a);
|
||||
--- cdrdao-1.2.4/pccts/h/set.h
|
||||
+++ cdrdao-1.2.4/pccts/h/set.h
|
||||
@@ -55,7 +55,7 @@
|
||||
/* make arg1 a set big enough to hold max elem # of arg2 */
|
||||
#define set_new(a,_max) \
|
||||
if (((a).setword=(unsigned *)calloc(NumWords(_max),BytesPerWord))==NULL) \
|
||||
- fprintf(stderr, "set_new: Cannot allocate set with max of %d\n", _max); \
|
||||
+ fprintf(stderr, "set_new: Cannot allocate set with max of %lu\n", _max); \
|
||||
(a).n = NumWords(_max);
|
||||
|
||||
#define set_free(a) \
|
21
cdrdao.spec
21
cdrdao.spec
@ -1,7 +1,7 @@
|
||||
Summary: Writes audio CD-Rs in disk-at-once (DAO) mode
|
||||
Name: cdrdao
|
||||
Version: 1.2.3
|
||||
Release: 34%{?dist}
|
||||
Version: 1.2.4
|
||||
Release: 1%{?dist}
|
||||
License: GPLv2+
|
||||
Group: Applications/Multimedia
|
||||
URL: http://cdrdao.sourceforge.net/
|
||||
@ -24,11 +24,15 @@ Obsoletes: gcdmaster < 1.2.3-10
|
||||
ExcludeArch: s390 s390x
|
||||
|
||||
# Missing includes causes failure build
|
||||
Patch1: cdrdao-1.2.3-stat.patch
|
||||
Patch2: cdrdao-1.2.3-helpmansync.patch
|
||||
Patch3: cdrdao-1.2.3-format_security.patch
|
||||
Patch4: cdrdao-1.2.3-narrowing.patch
|
||||
Patch5: cdrdao-1.2.3-lame-3.100.patch
|
||||
# Patches 1 to 5 upstreamed, remove in a future release
|
||||
#Patch1: cdrdao-1.2.3-stat.patch
|
||||
#Patch2: cdrdao-1.2.3-helpmansync.patch
|
||||
#Patch3: cdrdao-1.2.3-format_security.patch
|
||||
#Patch4: cdrdao-1.2.3-narrowing.patch
|
||||
#Patch5: cdrdao-1.2.3-lame-3.100.patch
|
||||
# Patches 6 and 7 grabbed from gentoo
|
||||
Patch6: cdrdao-1.2.4-wformat-security.patch
|
||||
Patch7: cdrdao-1.2.4-ax_pthread.patch
|
||||
|
||||
%description
|
||||
Cdrdao records audio CD-Rs in disk-at-once (DAO) mode, based on a
|
||||
@ -74,6 +78,9 @@ find $RPM_BUILD_ROOT -type f -name "*.la" -exec rm -f {} ';'
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Nov 06 2018 Filipe Rosset <rosset.filipe@gmail.com> - 1.2.4-1
|
||||
- update to 1.2.4 fixes rhbz #1579090
|
||||
|
||||
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.3-34
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user