summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-process/acct/files/acct-6.6.2-cross-compile.patch')
-rw-r--r--sys-process/acct/files/acct-6.6.2-cross-compile.patch320
1 files changed, 320 insertions, 0 deletions
diff --git a/sys-process/acct/files/acct-6.6.2-cross-compile.patch b/sys-process/acct/files/acct-6.6.2-cross-compile.patch
new file mode 100644
index 000000000000..70b0556fd486
--- /dev/null
+++ b/sys-process/acct/files/acct-6.6.2-cross-compile.patch
@@ -0,0 +1,320 @@
+https://savannah.gnu.org/patch/?7473
+
+From 8958c3cb7b77ec50d8dae0490d8c80dee798e20d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Diego=20Elio=20Petten=C3=B2?= <flameeyes@gmail.com>
+Date: Fri, 18 Feb 2011 06:13:20 +0100
+Subject: [PATCH] Don't generate files.h at build-time using an execution test.
+
+The *_LOC variables are never used in the build itself, but only in the
+built code; this means that they don't need to be known to ./configure at
+all.
+
+Since the previous method made acct not cross-compilable at all, this is
+much preferred.
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -69,11 +69,6 @@ SYS_LASTCOMM = @SYS_LASTCOMM@
+ SYS_AC = @SYS_AC@
+ SYS_SA = @SYS_SA@
+
+-WTMP_FILE_LOC = @WTMP_FILE_LOC@
+-ACCT_FILE_LOC = @ACCT_FILE_LOC@
+-SAVACCT_FILE_LOC = @SAVACCT_FILE_LOC@
+-USRACCT_FILE_LOC = @USRACCT_FILE_LOC@
+-
+ compare-ac: ac
+ @echo
+ @echo "Running tests for ac"
+--- a/configure.ac
++++ b/configure.ac
+@@ -229,101 +229,6 @@ AC_CHECK_HEADER(sys/acct.h,
+ AC_EGREP_HEADER([comp_t],[sys/acct.h],[AC_DEFINE(HAVE_COMP_T, 1, Define if <sys/acct.h> uses the COMP_T type.)])
+ ) ]
+ )
+-dnl
+-dnl find out where utmp/pacct are stored
+-dnl
+-AC_RUN_IFELSE([AC_LANG_SOURCE([[
+-#include <stdio.h>
+-#include <stdlib.h>
+-#include <sys/types.h>
+-#include <stdint.h> /* GNU/kFreeBSD */
+-#include <sys/acct.h>
+-#include <utmp.h>
+-
+-#ifndef WTMP_FILE
+-# if defined(__FreeBSD__) || defined (__NetBSD__) || defined(__linux__) \
+- || defined(__FreeBSD_kernel__) || defined(__GLIBC__)
+-# define WTMP_FILE "/var/log/account/wtmp"
+-# else
+-# if defined(sun) || defined(AMIX)
+-# define WTMP_FILE "/var/adm/wtmp"
+-# else
+-# if defined(sgi) || defined(SVR4)
+-# define WTMP_FILE "/usr/adm/wtmp"
+-# else
+-# define WTMP_FILE "/usr/adm/wtmp"
+-# endif
+-# endif
+-# endif
+-#endif
+-
+-#ifndef ACCT_FILE
+-# if defined(__FreeBSD__) || defined(__linux__) \
+- || defined(__FreeBSD_kernel__) || defined(__GLIBC__)
+-# define ACCT_FILE "/var/log/account/pacct"
+-# else
+-# if defined(__NetBSD__)
+-# define ACCT_FILE "/var/log/account/acct"
+-# else
+-# if defined(sun) || defined(AMIX)
+-# define ACCT_FILE "/var/adm/pacct"
+-# else
+-# if defined(sgi) || defined(SVR4) || defined(M_XENIX)
+-# define ACCT_FILE "/usr/adm/pacct"
+-# else
+-# define ACCT_FILE "/usr/adm/acct"
+-# endif
+-# endif
+-# endif
+-# endif
+-#endif
+-
+-#ifndef SAVACCT_FILE
+-# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__linux__) \
+- || defined(__FreeBSD_kernel__) || defined(__GLIBC__)
+-# define SAVACCT_FILE "/var/log/account/savacct"
+-# else
+-# if defined(sun) || defined(AMIX)
+-# define SAVACCT_FILE "/var/adm/savacct"
+-# else
+-# if defined(sgi) || defined(SVR4)
+-# define SAVACCT_FILE "/usr/adm/savacct"
+-# else
+-# define SAVACCT_FILE "/usr/adm/savacct"
+-# endif
+-# endif
+-# endif
+-#endif
+-
+-#ifndef USRACCT_FILE
+-# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__linux__) \
+- || defined(__FreeBSD_kernel__) || defined(__GLIBC__)
+-# define USRACCT_FILE "/var/log/account/usracct"
+-# else
+-# if defined(sun) || defined(AMIX)
+-# define USRACCT_FILE "/var/adm/usracct"
+-# else
+-# if defined(sgi) || defined(SVR4)
+-# define USRACCT_FILE "/usr/adm/usracct"
+-# else
+-# define USRACCT_FILE "/usr/adm/usracct"
+-# endif
+-# endif
+-# endif
+-#endif
+-
+-main ()
+-{
+- FILE *fp;
+- fp = fopen ("locs", "w");
+- fprintf (fp, "WTMP_FILE_LOC=%s\n", WTMP_FILE);
+- fprintf (fp, "ACCT_FILE_LOC=%s\n", ACCT_FILE);
+- fprintf (fp, "SAVACCT_FILE_LOC=%s\n", SAVACCT_FILE);
+- fprintf (fp, "USRACCT_FILE_LOC=%s\n", USRACCT_FILE);
+- fclose (fp);
+- exit(0);
+-}
+-]])],[. ./locs; rm locs],[echo "Error -- could not locate your wtmp and acct files."; exit 1],[echo "Sorry -- you cannot cross-compile this package (FIXME)."; exit 1 ])
+
+ dnl types
+ AC_TYPE_PID_T dnl for sys/acct.h
+@@ -367,12 +272,6 @@ AC_SUBST(ACCTON_MAN)
+ AC_SUBST(LASTCOMM_MAN)
+ AC_SUBST(SA_MAN)
+
+-dnl Substitutions for file locations
+-AC_SUBST(WTMP_FILE_LOC)
+-AC_SUBST(ACCT_FILE_LOC)
+-AC_SUBST(SAVACCT_FILE_LOC)
+-AC_SUBST(USRACCT_FILE_LOC)
+-
+ dnl Dump the makefiles and etc.
+-AC_CONFIG_FILES([Makefile lib/Makefile files.h version.h])
++AC_CONFIG_FILES([Makefile lib/Makefile version.h])
+ AC_OUTPUT
+--- /dev/null
++++ b/files.h
+@@ -0,0 +1,120 @@
++/* files.h.in
++ *
++ * file locations
++ *
++ */
++
++#ifndef FILES_H
++#define FILES_H
++
++#include "config.h"
++
++#include <sys/types.h>
++
++#ifdef LINUX_MULTIFORMAT
++# include "linux-acct.h"
++#else
++# include <stdint.h> /* GNU/kFreeBSD */
++# include <sys/acct.h>
++# if defined __FreeBSD__ || defined __FreeBSD_kernel__
++# include <osreldate.h>
++# if defined __FreeBSD_kernel__
++# define __FreeBSD_version __FreeBSD_kernel_version
++# endif /* __FreeBSD_kernel__ */
++# if __FreeBSD_version >= 700100 /* FreeBSD 7.0-STABLE */
++# define acct acctv2
++# define ac_flag ac_flagx
++# endif
++# endif
++#endif
++
++#include <utmp.h>
++
++#ifndef WTMP_FILE
++# if defined(__FreeBSD__) || defined (__NetBSD__) || defined(__linux__) \
++ || defined(__FreeBSD_kernel__) || defined(__GLIBC__)
++# define WTMP_FILE "/var/log/account/wtmp"
++# else
++# if defined(sun) || defined(AMIX)
++# define WTMP_FILE "/var/adm/wtmp"
++# else
++# if defined(sgi) || defined(SVR4)
++# define WTMP_FILE "/usr/adm/wtmp"
++# else
++# define WTMP_FILE "/usr/adm/wtmp"
++# endif
++# endif
++# endif
++#endif
++
++#ifndef ACCT_FILE
++# if defined(__FreeBSD__) || defined(__linux__) \
++ || defined(__FreeBSD_kernel__) || defined(__GLIBC__)
++# define ACCT_FILE "/var/log/account/pacct"
++# else
++# if defined(__NetBSD__)
++# define ACCT_FILE "/var/log/account/acct"
++# else
++# if defined(sun) || defined(AMIX)
++# define ACCT_FILE "/var/adm/pacct"
++# else
++# if defined(sgi) || defined(SVR4) || defined(M_XENIX)
++# define ACCT_FILE "/usr/adm/pacct"
++# else
++# define ACCT_FILE "/usr/adm/acct"
++# endif
++# endif
++# endif
++# endif
++#endif
++
++#ifndef SAVACCT_FILE
++# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__linux__) \
++ || defined(__FreeBSD_kernel__) || defined(__GLIBC__)
++# define SAVACCT_FILE "/var/log/account/savacct"
++# else
++# if defined(sun) || defined(AMIX)
++# define SAVACCT_FILE "/var/adm/savacct"
++# else
++# if defined(sgi) || defined(SVR4)
++# define SAVACCT_FILE "/usr/adm/savacct"
++# else
++# define SAVACCT_FILE "/usr/adm/savacct"
++# endif
++# endif
++# endif
++#endif
++
++#ifndef USRACCT_FILE
++# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__linux__) \
++ || defined(__FreeBSD_kernel__) || defined(__GLIBC__)
++# define USRACCT_FILE "/var/log/account/usracct"
++# else
++# if defined(sun) || defined(AMIX)
++# define USRACCT_FILE "/var/adm/usracct"
++# else
++# if defined(sgi) || defined(SVR4)
++# define USRACCT_FILE "/usr/adm/usracct"
++# else
++# define USRACCT_FILE "/usr/adm/usracct"
++# endif
++# endif
++# endif
++#endif
++
++#define WTMP_FILE_LOC WTMP_FILE
++#define ACCT_FILE_LOC ACCT_FILE
++#define SAVACCT_FILE_LOC SAVACCT_FILE
++#define USRACCT_FILE_LOC USRACCT_FILE
++
++/* Workaround for a kernel includes problem */
++#if defined(__linux__) && defined(__alpha__)
++#undef AHZ
++#define AHZ 1024
++#endif
++
++#ifndef AHZ
++#define AHZ 64
++#endif
++
++#endif /* ! FILES_H */
+--- a/files.h.in
++++ /dev/null
+@@ -1,48 +0,0 @@
+-/* files.h.in
+- *
+- * file locations
+- *
+- */
+-
+-#ifndef FILES_H
+-#define FILES_H
+-
+-#include "config.h"
+-
+-#include <sys/types.h>
+-
+-#ifdef LINUX_MULTIFORMAT
+-# include "linux-acct.h"
+-#else
+-# include <stdint.h> /* GNU/kFreeBSD */
+-# include <sys/acct.h>
+-# if defined __FreeBSD__ || defined __FreeBSD_kernel__
+-# include <osreldate.h>
+-# if defined __FreeBSD_kernel__
+-# define __FreeBSD_version __FreeBSD_kernel_version
+-# endif /* __FreeBSD_kernel__ */
+-# if __FreeBSD_version >= 700100 /* FreeBSD 7.0-STABLE */
+-# define acct acctv2
+-# define ac_flag ac_flagx
+-# endif
+-# endif
+-#endif
+-
+-#include <utmp.h>
+-
+-#define WTMP_FILE_LOC "@WTMP_FILE_LOC@"
+-#define ACCT_FILE_LOC "@ACCT_FILE_LOC@"
+-#define SAVACCT_FILE_LOC "@SAVACCT_FILE_LOC@"
+-#define USRACCT_FILE_LOC "@USRACCT_FILE_LOC@"
+-
+-/* Workaround for a kernel includes problem */
+-#if defined(__linux__) && defined(__alpha__)
+-#undef AHZ
+-#define AHZ 1024
+-#endif
+-
+-#ifndef AHZ
+-#define AHZ 64
+-#endif
+-
+-#endif /* ! FILES_H */