[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
openat tests: link error
From: |
Bruno Haible |
Subject: |
openat tests: link error |
Date: |
Sat, 18 Jun 2011 23:07:42 +0200 |
User-agent: |
KMail/1.9.9 |
On HP-UX 11.31, I'm getting these link errors:
cc -Ae -D_XOPEN_SOURCE=500 -O -g -o test-fdopendir test-fdopendir.o
libtests.a ../gllib/libgnu.a libtests.a
/usr/ccs/bin/ld: Unsatisfied symbols:
program_name (first referenced in ../gllib/libgnu.a(error.o)) (data)
gmake[2]: *** [test-fdopendir] Error 1
cc -Ae -D_XOPEN_SOURCE=500 -O -g -o test-fchownat test-fchownat.o libtests.a
../gllib/libgnu.a libtests.a
/usr/ccs/bin/ld: Unsatisfied symbols:
program_name (first referenced in ../gllib/libgnu.a(error.o)) (data)
gmake[2]: *** [test-fchownat] Error 1
cc -Ae -D_XOPEN_SOURCE=500 -O -g -o test-fstatat test-fstatat.o libtests.a
../gllib/libgnu.a libtests.a
/usr/ccs/bin/ld: Unsatisfied symbols:
program_name (first referenced in ../gllib/libgnu.a(error.o)) (data)
gmake[2]: *** [test-fstatat] Error 1
cc -Ae -D_XOPEN_SOURCE=500 -O -g -o test-mkdirat test-mkdirat.o libtests.a
../gllib/libgnu.a libtests.a
/usr/ccs/bin/ld: Unsatisfied symbols:
program_name (first referenced in ../gllib/libgnu.a(error.o)) (data)
gmake[2]: *** [test-mkdirat] Error 1
cc -Ae -D_XOPEN_SOURCE=500 -O -g -o test-openat test-openat.o libtests.a
../gllib/libgnu.a libtests.a
/usr/ccs/bin/ld: Unsatisfied symbols:
program_name (first referenced in ../gllib/libgnu.a(error.o)) (data)
gmake[2]: *** [test-openat] Error 1
cc -Ae -D_XOPEN_SOURCE=500 -O -g -o test-unlinkat test-unlinkat.o libtests.a
../gllib/libgnu.a libtests.a
/usr/ccs/bin/ld: Unsatisfied symbols:
program_name (first referenced in ../gllib/libgnu.a(error.o)) (data)
gmake[2]: *** [test-unlinkat] Error 1
The reason is that these tests depend on the 'openat' module, which depends
on 'openat-die', which depends on 'error', which needs the 'program_name'
variable.
This fixes it:
2011-06-18 Bruno Haible <address@hidden>
openat, fdopendir tests: Fix link errors.
* modules/openat-tests (Depends-on): Add progname.
* modules/fdopendir-tests (Depends-on): Likewise.
* tests/test-fchownat.c: Include progname.h.
(main): Call set_program_name.
* tests/test-fstatat.c: Include progname.h.
(main): Call set_program_name.
* tests/test-mkdirat.c: Include progname.h.
(main): Call set_program_name.
* tests/test-openat.c: Include progname.h.
(main): Call set_program_name.
* tests/test-unlinkat.c: Include progname.h.
(main): Call set_program_name.
* tests/test-fdopendir.c: Include progname.h.
(main): Call set_program_name.
--- modules/fdopendir-tests.orig Sat Jun 18 23:03:18 2011
+++ modules/fdopendir-tests Sat Jun 18 22:55:41 2011
@@ -5,6 +5,7 @@
Depends-on:
open
+progname
configure.ac:
--- modules/openat-tests.orig Sat Jun 18 23:03:18 2011
+++ modules/openat-tests Sat Jun 18 22:56:00 2011
@@ -19,6 +19,7 @@
ignore-value
mgetgroups
pathmax
+progname
usleep
stat-time
symlink
--- tests/test-fchownat.c.orig Sat Jun 18 23:03:18 2011
+++ tests/test-fchownat.c Sat Jun 18 22:55:11 2011
@@ -32,6 +32,7 @@
#include "mgetgroups.h"
#include "openat.h"
+#include "progname.h"
#include "stat-time.h"
#include "ignore-value.h"
#include "macros.h"
@@ -58,11 +59,13 @@
}
int
-main (void)
+main (int argc _GL_UNUSED, char *argv[])
{
int result1; /* Skip because of no chown/symlink support. */
int result2; /* Skip because of no lchown support. */
+ set_program_name (argv[0]);
+
/* Clean up any trash from prior testsuite runs. */
ignore_value (system ("rm -rf " BASE "*"));
--- tests/test-fdopendir.c.orig Sat Jun 18 23:03:18 2011
+++ tests/test-fdopendir.c Sat Jun 18 22:55:11 2011
@@ -27,14 +27,17 @@
#include <fcntl.h>
#include <unistd.h>
+#include "progname.h"
#include "macros.h"
int
-main (void)
+main (int argc _GL_UNUSED, char *argv[])
{
DIR *d;
int fd;
+ set_program_name (argv[0]);
+
/* A non-directory cannot be turned into a directory stream. */
fd = open ("test-fdopendir.tmp", O_RDONLY | O_CREAT, 0600);
ASSERT (0 <= fd);
--- tests/test-fstatat.c.orig Sat Jun 18 23:03:18 2011
+++ tests/test-fstatat.c Sat Jun 18 22:55:11 2011
@@ -32,6 +32,7 @@
#include "openat.h"
#include "pathmax.h"
+#include "progname.h"
#include "same-inode.h"
#include "ignore-value.h"
#include "macros.h"
@@ -58,10 +59,12 @@
}
int
-main (void)
+main (int argc _GL_UNUSED, char *argv[])
{
int result;
+ set_program_name (argv[0]);
+
/* Remove any leftovers from a previous partial run. */
ignore_value (system ("rm -rf " BASE "*"));
--- tests/test-mkdirat.c.orig Sat Jun 18 23:03:18 2011
+++ tests/test-mkdirat.c Sat Jun 18 22:55:11 2011
@@ -30,6 +30,7 @@
#include <stdlib.h>
#include <unistd.h>
+#include "progname.h"
#include "ignore-value.h"
#include "macros.h"
@@ -47,10 +48,12 @@
}
int
-main (void)
+main (int argc _GL_UNUSED, char *argv[])
{
int result;
+ set_program_name (argv[0]);
+
/* Clean up any trash from prior testsuite runs. */
ignore_value (system ("rm -rf " BASE "*"));
--- tests/test-openat.c.orig Sat Jun 18 23:03:18 2011
+++ tests/test-openat.c Sat Jun 18 22:55:12 2011
@@ -29,6 +29,7 @@
#include <stdio.h>
#include <unistd.h>
+#include "progname.h"
#include "macros.h"
#define BASE "test-openat.t"
@@ -58,10 +59,12 @@
}
int
-main (void)
+main (int argc _GL_UNUSED, char *argv[])
{
int result;
+ set_program_name (argv[0]);
+
/* Basic checks. */
result = test_open (do_open, false);
dfd = open (".", O_RDONLY);
--- tests/test-unlinkat.c.orig Sat Jun 18 23:03:18 2011
+++ tests/test-unlinkat.c Sat Jun 18 22:55:12 2011
@@ -30,6 +30,7 @@
#include <stdlib.h>
#include <sys/stat.h>
+#include "progname.h"
#include "unlinkdir.h"
#include "ignore-value.h"
#include "macros.h"
@@ -56,12 +57,14 @@
}
int
-main (void)
+main (int argc _GL_UNUSED, char *argv[])
{
/* FIXME: Add tests of fd other than ".". */
int result1;
int result2;
+ set_program_name (argv[0]);
+
/* Remove any leftovers from a previous partial run. */
ignore_value (system ("rm -rf " BASE "*"));
--
In memoriam Mona Mahmudnizhad <http://en.wikipedia.org/wiki/Mona_Mahmudnizhad>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- openat tests: link error,
Bruno Haible <=