From af0574378b3e73ffe637618e2f504d58735d6543 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 14 Jul 2005 06:36:19 +0000 Subject: r8450: more configure tests for solaris. It now builds some binaries, but fails in the ejs floating point code. (This used to be commit 30e1b6140e9f6246cb66eef7cf108d1ccf62bd40) --- source4/heimdal_build/config.h | 5 +++++ source4/heimdal_build/config.m4 | 6 ++++++ source4/heimdal_build/config.mk | 4 ++-- source4/heimdal_build/replace.c | 29 +++++++++++++++++++++++++++++ 4 files changed, 42 insertions(+), 2 deletions(-) (limited to 'source4/heimdal_build') diff --git a/source4/heimdal_build/config.h b/source4/heimdal_build/config.h index 02b3705ba1..6bbe947155 100644 --- a/source4/heimdal_build/config.h +++ b/source4/heimdal_build/config.h @@ -3,6 +3,9 @@ Samba source tree */ +#ifndef HAVE_HEIMDAL_CONFIG_H +#define HAVE_HEIMDAL_CONFIG_H 1 + /* bring in the samba4 config.h */ #include "include/config.h" @@ -42,3 +45,5 @@ static /**/const char *const rcsid[] = { (const char *)rcsid, "\100(#)" msg } #include #include "lib/replace/replace.h" #endif + +#endif diff --git a/source4/heimdal_build/config.m4 b/source4/heimdal_build/config.m4 index 90fb7a930d..342ab6901f 100644 --- a/source4/heimdal_build/config.m4 +++ b/source4/heimdal_build/config.m4 @@ -87,6 +87,8 @@ AC_CHECK_FUNCS([ \ hstrerror \ err \ errx \ + warnx \ + flock \ writev ]) @@ -174,6 +176,10 @@ SMB_BINARY_ENABLE(compile_et, NO) AC_PROG_LEX AC_PROG_YACC +AC_CHECK_TYPES(u_int32_t) +AC_CHECK_TYPES(u_int16_t) +AC_CHECK_TYPES(u_int8_t) + # to enable kerberos, unpack a heimdal source tree in the heimdal directory # of the samba source tree if test -d heimdal; then diff --git a/source4/heimdal_build/config.mk b/source4/heimdal_build/config.mk index 9b1ee96edf..25abfa9542 100644 --- a/source4/heimdal_build/config.mk +++ b/source4/heimdal_build/config.mk @@ -179,7 +179,6 @@ ADD_OBJ_FILES = \ heimdal/lib/asn1/der_length.o \ heimdal/lib/asn1/der_copy.o \ heimdal/lib/asn1/der_cmp.o \ - heimdal/lib/asn1/timegm.o \ heimdal/lib/asn1/asn1_AD_IF_RELEVANT.o \ heimdal/lib/asn1/asn1_APOptions.o \ heimdal/lib/asn1/asn1_AP_REP.o \ @@ -282,7 +281,8 @@ ADD_OBJ_FILES = \ heimdal/lib/roken/strlwr.o \ heimdal/lib/roken/strsep_copy.o \ heimdal/lib/roken/strupr.o \ - heimdal/lib/roken/strpool.o + heimdal/lib/roken/strpool.o \ + heimdal_build/replace.o NOPROTO = YES # End SUBSYSTEM HEIMDAL_ROKEN ####################### diff --git a/source4/heimdal_build/replace.c b/source4/heimdal_build/replace.c index 0b7e1943f8..46019d7bb5 100644 --- a/source4/heimdal_build/replace.c +++ b/source4/heimdal_build/replace.c @@ -24,6 +24,7 @@ #include "config.h" #include #include "err.h" +#include "roken.h" #ifndef HAVE_ERR void err(int eval, const char *format, ...) @@ -47,3 +48,31 @@ exit(eval); } #endif + +#ifndef HAVE_WARNX + void warnx(const char *format, ...) +{ + va_list ap; + va_start(ap, format); + vfprintf(stderr, format, ap); + va_end(ap); +} +#endif + +#ifndef HAVE_FLOCK + int flock(int fd, int op) +{ + switch (op & (LOCK_UN|LOCK_SH|LOCK_EX)) { + case LOCK_UN: + return fcntl_lock(fd, F_SETLK, 0, 0, F_UNLCK); + case LOCK_SH: + return fcntl_lock(fd, (op&LOCK_NB)?F_SETLK:F_SETLKW, + 0, 0, F_RDLCK); + case LOCK_EX: + return fcntl_lock(fd, (op&LOCK_NB)?F_SETLK:F_SETLKW, + 0, 0, F_WRLCK); + } + errno = EINVAL; + return -1; +} +#endif -- cgit