aboutsummaryrefslogtreecommitdiffstats
path: root/tools/pidl
diff options
context:
space:
mode:
authorJörg Mayer <jmayer@loplof.de>2007-05-08 17:39:28 +0000
committerJörg Mayer <jmayer@loplof.de>2007-05-08 17:39:28 +0000
commit26aae8fd1278a5bee9d42a03d9d3feca64e11749 (patch)
tree06f714de03a904cddaccb2e84764d959d1d3757d /tools/pidl
parentab32895f34dcafe2143598473fead43bb1f74301 (diff)
Update from samba tree revision 22657 to 22761
============================ Samba log start ============ ------------------------------------------------------------------------ r22667 | metze | 2007-05-04 12:44:41 +0200 (Fri, 04 May 2007) | 3 lines Changed paths: M /branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba4/Header.pm revert revision 22640 as it breaks nested structs in idl metze ------------------------------------------------------------------------ r22741 | jelmer | 2007-05-07 14:31:42 +0200 (Mon, 07 May 2007) | 1 line Changed paths: M /branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Wireshark/NDR.pm Add MSVC-specific pragma's for Wireshark. Patch from Ronnie. ------------------------------------------------------------------------ r22742 | jelmer | 2007-05-07 14:41:23 +0200 (Mon, 07 May 2007) | 1 line Changed paths: M /branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Wireshark/NDR.pm Fix tests. ------------------------------------------------------------------------ ------------------------------------------------------------------------ ============================ Samba log end ============== svn path=/trunk/; revision=21729
Diffstat (limited to 'tools/pidl')
-rw-r--r--tools/pidl/lib/Parse/Pidl/Samba4/Header.pm22
-rw-r--r--tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm8
2 files changed, 20 insertions, 10 deletions
diff --git a/tools/pidl/lib/Parse/Pidl/Samba4/Header.pm b/tools/pidl/lib/Parse/Pidl/Samba4/Header.pm
index f43c042da9..2eddf22b05 100644
--- a/tools/pidl/lib/Parse/Pidl/Samba4/Header.pm
+++ b/tools/pidl/lib/Parse/Pidl/Samba4/Header.pm
@@ -43,7 +43,7 @@ sub HeaderProperties($$)
}
if ($ret) {
- pidl " /* [" . substr($ret, 0, -1) . "] */";
+ pidl "/* [" . substr($ret, 0, -1) . "] */";
}
}
@@ -108,12 +108,10 @@ sub HeaderStruct($$)
pidl tabs()."char _empty_;\n";
}
$tab_depth--;
-
- pidl "};";
+ pidl tabs()."}";
if (defined $struct->{PROPERTIES}) {
HeaderProperties($struct->{PROPERTIES}, []);
}
- pidl "\n\n";
}
#####################################################################
@@ -134,10 +132,10 @@ sub HeaderEnum($$)
}
pidl "\n";
$tab_depth--;
- pidl "};\n";
+ pidl "}\n";
pidl "#else\n";
my $count = 0;
- pidl "enum $name { __donnot_use_enum_$name=0x7FFFFFFF};\n";
+ pidl "enum $name { __donnot_use_enum_$name=0x7FFFFFFF}\n";
my $with_val = 0;
my $without_val = 0;
foreach my $e (@{$enum->{ELEMENTS}}) {
@@ -193,12 +191,11 @@ sub HeaderUnion($$)
}
}
$tab_depth--;
+ pidl "}";
- pidl "};";
if (defined $union->{PROPERTIES}) {
HeaderProperties($union->{PROPERTIES}, []);
}
- pidl "\n\n";
}
#####################################################################
@@ -300,7 +297,7 @@ sub HeaderFunction($)
HeaderFunctionInOut($fn, "in");
HeaderFunctionInOut($fn, "inout");
$tab_depth--;
- pidl tabs()."} in;\n";
+ pidl tabs()."} in;\n\n";
$needed++;
}
@@ -314,7 +311,7 @@ sub HeaderFunction($)
pidl tabs().mapTypeName($fn->{RETURN_TYPE}) . " result;\n";
}
$tab_depth--;
- pidl tabs()."} out;\n";
+ pidl tabs()."} out;\n\n";
$needed++;
}
@@ -365,6 +362,11 @@ sub HeaderInterface($)
HeaderUnion($d, $d->{NAME}) if ($d->{TYPE} eq "UNION");
HeaderEnum($d, $d->{NAME}) if ($d->{TYPE} eq "ENUM");
HeaderBitmap($d, $d->{NAME}) if ($d->{TYPE} eq "BITMAP");
+ pidl ";\n\n" if ($d->{TYPE} eq "BITMAP" or
+ $d->{TYPE} eq "STRUCT" or
+ $d->{TYPE} eq "TYPEDEF" or
+ $d->{TYPE} eq "UNION" or
+ $d->{TYPE} eq "ENUM");
}
foreach my $d (@{$interface->{DATA}}) {
diff --git a/tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm b/tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm
index ea3f0db961..ac923bef74 100644
--- a/tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm
+++ b/tools/pidl/lib/Parse/Pidl/Wireshark/NDR.pm
@@ -919,6 +919,14 @@ sub Parse($$$$$)
$self->{res}->{headers} .= "#ifdef HAVE_CONFIG_H\n";
$self->{res}->{headers} .= "#include \"config.h\"\n";
$self->{res}->{headers} .= "#endif\n\n";
+
+ $self->{res}->{headers} .= "#ifdef _MSC_VER\n";
+ $self->{res}->{headers} .= "#pragma warning(disable:4005)\n";
+ $self->{res}->{headers} .= "#pragma warning(disable:4013)\n";
+ $self->{res}->{headers} .= "#pragma warning(disable:4018)\n";
+ $self->{res}->{headers} .= "#pragma warning(disable:4101)\n";
+ $self->{res}->{headers} .= "#endif\n\n";
+
$self->{res}->{headers} .= "#include <glib.h>\n";
$self->{res}->{headers} .= "#include <string.h>\n";
$self->{res}->{headers} .= "#include <epan/packet.h>\n\n";