Author: obnox Date: 2007-10-05 12:05:40 +0000 (Fri, 05 Oct 2007) New Revision: 25515
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25515 Log: Revert r25448: Immediate structures are *not* supportet by the native C compiler at least on Solaris, Tru64 and HP-UX. Michael Modified: branches/SAMBA_4_0/source/build/smb_build/env.pm branches/SAMBA_4_0/source/lib/replace/libreplace_cc.m4 branches/SAMBA_4_0/source/libcli/util/ntstatus.h branches/SAMBA_4_0/source/libcli/util/werror.h branches/SAMBA_4_0/source/librpc/ndr/libndr.h Changeset: Modified: branches/SAMBA_4_0/source/build/smb_build/env.pm =================================================================== --- branches/SAMBA_4_0/source/build/smb_build/env.pm 2007-10-05 08:54:27 UTC (rev 25514) +++ branches/SAMBA_4_0/source/build/smb_build/env.pm 2007-10-05 12:05:40 UTC (rev 25515) @@ -59,6 +59,10 @@ print __FILE__.": creating $path\n"; + if ($self->{config}->{libreplace_cv_immediate_structures} eq "yes") { + $cflags .= " -DHAVE_IMMEDIATE_STRUCTURES=1"; + } + mkpath(dirname($path),0,0755); open(OUT, ">$path") or die("Can't open $path: $!"); Modified: branches/SAMBA_4_0/source/lib/replace/libreplace_cc.m4 =================================================================== --- branches/SAMBA_4_0/source/lib/replace/libreplace_cc.m4 2007-10-05 08:54:27 UTC (rev 25514) +++ branches/SAMBA_4_0/source/lib/replace/libreplace_cc.m4 2007-10-05 12:05:40 UTC (rev 25515) @@ -159,8 +159,8 @@ libreplace_cv_immediate_structures=no, libreplace_cv_immediate_structures=cross) ]) -if test x"$libreplace_cv_immediate_structures" = x"no"; then - AC_MSG_ERROR([compiler does not support immediate structures]) +if test x"$libreplace_cv_immediate_structures" = x"yes"; then + AC_DEFINE(HAVE_IMMEDIATE_STRUCTURES,1,[Whether the compiler supports immediate structures]) fi AC__LIBREPLACE_ONLY_CC_CHECKS_END Modified: branches/SAMBA_4_0/source/libcli/util/ntstatus.h =================================================================== --- branches/SAMBA_4_0/source/libcli/util/ntstatus.h 2007-10-05 08:54:27 UTC (rev 25514) +++ branches/SAMBA_4_0/source/libcli/util/ntstatus.h 2007-10-05 12:05:40 UTC (rev 25515) @@ -29,9 +29,15 @@ from using bool for internal functions */ +#if defined(HAVE_IMMEDIATE_STRUCTURES) typedef struct {uint32_t v;} NTSTATUS; #define NT_STATUS(x) ((NTSTATUS) { x }) #define NT_STATUS_V(x) ((x).v) +#else +typedef uint32_t NTSTATUS; +#define NT_STATUS(x) (x) +#define NT_STATUS_V(x) (x) +#endif /* Win32 Status codes. */ Modified: branches/SAMBA_4_0/source/libcli/util/werror.h =================================================================== --- branches/SAMBA_4_0/source/libcli/util/werror.h 2007-10-05 08:54:27 UTC (rev 25514) +++ branches/SAMBA_4_0/source/libcli/util/werror.h 2007-10-05 12:05:40 UTC (rev 25515) @@ -19,7 +19,7 @@ */ #ifndef _WERROR_H_ -#define _WERROR_H_ +#define _WERROR_H #include <stdint.h> @@ -29,9 +29,15 @@ from using bool for internal functions */ +#if defined(HAVE_IMMEDIATE_STRUCTURES) typedef struct {uint32_t v;} WERROR; #define W_ERROR(x) ((WERROR) { x }) #define W_ERROR_V(x) ((x).v) +#else +typedef uint32_t WERROR; +#define W_ERROR(x) (x) +#define W_ERROR_V(x) (x) +#endif #define W_ERROR_IS_OK(x) (W_ERROR_V(x) == 0) #define W_ERROR_EQUAL(x,y) (W_ERROR_V(x) == W_ERROR_V(y)) Modified: branches/SAMBA_4_0/source/librpc/ndr/libndr.h =================================================================== --- branches/SAMBA_4_0/source/librpc/ndr/libndr.h 2007-10-05 08:54:27 UTC (rev 25514) +++ branches/SAMBA_4_0/source/librpc/ndr/libndr.h 2007-10-05 12:05:40 UTC (rev 25515) @@ -285,7 +285,6 @@ typedef void (*ndr_print_function_t)(struct ndr_print *, const char *, int, const void *); #include "librpc/gen_ndr/misc.h" -#include "libcli/util/werror.h" #include "librpc/ndr/libndr_proto.h" extern const struct ndr_syntax_id ndr_transfer_syntax;
