diff options
Diffstat (limited to 'source4/pidl/lib/Parse/Pidl')
-rw-r--r-- | source4/pidl/lib/Parse/Pidl/Samba4/Header.pm | 2 | ||||
-rw-r--r-- | source4/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm | 15 | ||||
-rw-r--r-- | source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm | 14 |
3 files changed, 26 insertions, 5 deletions
diff --git a/source4/pidl/lib/Parse/Pidl/Samba4/Header.pm b/source4/pidl/lib/Parse/Pidl/Samba4/Header.pm index 54e410f716..e082a74fc4 100644 --- a/source4/pidl/lib/Parse/Pidl/Samba4/Header.pm +++ b/source4/pidl/lib/Parse/Pidl/Samba4/Header.pm @@ -351,7 +351,7 @@ sub Parse($) %headerstructs = (); pidl "/* header auto-generated by pidl */\n\n"; if (!is_intree()) { - pidl "#include <core.h>"; + pidl "#include <core.h>\n\n"; } foreach (@{$idl}) { diff --git a/source4/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm b/source4/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm index d52dc12ec3..f19f4df319 100644 --- a/source4/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm +++ b/source4/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm @@ -5,6 +5,8 @@ package Parse::Pidl::Samba4::NDR::Client; +use Parse::Pidl::Samba4 qw(choose_header is_intree); + use vars qw($VERSION); $VERSION = '0.01'; @@ -97,12 +99,21 @@ sub Parse($$$$) $res .= "/* client functions auto-generated by pidl */\n"; $res .= "\n"; - $res .= "#include \"includes.h\"\n"; + if (is_intree()) { + $res .= "#include \"includes.h\"\n"; + } else { + $res .= "#define _GNU_SOURCE\n"; + $res .= "#include <stdio.h>\n"; + $res .= "#include <stdlib.h>\n"; + $res .= "#include <stdint.h>\n"; + $res .= "#include <stdarg.h>\n"; + $res .= "#include <core/nterr.h>\n"; + } $res .= "#include \"$ndr_header\"\n"; $res .= "#include \"$client_header\"\n"; $res .= "\n"; - $res_hdr .= "#include \"librpc/rpc/dcerpc.h\"\n"; + $res_hdr .= choose_header("librpc/rpc/dcerpc.h", "dcerpc.h")."\n"; $res_hdr .= "#include \"$header\"\n"; foreach my $x (@{$ndr}) { diff --git a/source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm b/source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm index 3bdb701526..7e597dfb34 100644 --- a/source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm +++ b/source4/pidl/lib/Parse/Pidl/Samba4/TDR.pm @@ -5,6 +5,7 @@ package Parse::Pidl::Samba4::TDR; use Parse::Pidl::Util qw(has_property ParseExpr is_constant); +use Parse::Pidl::Samba4 qw(is_intree choose_header); use vars qw($VERSION); $VERSION = '0.01'; @@ -237,12 +238,21 @@ sub Parser($$$) my ($idl,$hdrname,$baseheader) = @_; $ret = ""; $ret_hdr = ""; pidl "/* autogenerated by pidl */"; - pidl "#include \"includes.h\""; + if (is_intree()) { + pidl "#include \"includes.h\""; + } else { + pidl "#include <stdio.h>"; + pidl "#include <stdlib.h>"; + pidl "#include <stdint.h>"; + pidl "#include <stdarg.h>"; + pidl "#include <string.h>"; + pidl "#include <core/nterr.h>"; + } pidl "#include \"$hdrname\""; pidl ""; pidl_hdr "/* autogenerated by pidl */"; pidl_hdr "#include \"$baseheader\""; - pidl_hdr "#include \"tdr/tdr.h\""; + pidl_hdr choose_header("tdr/tdr.h", "tdr.h"); pidl_hdr ""; foreach (@$idl) { ParserInterface($_) if ($_->{TYPE} eq "INTERFACE"); } |