summaryrefslogtreecommitdiff
path: root/skip/samba/pidl.patch
diff options
context:
space:
mode:
authordavidovski <david@davidovski.xyz>2023-02-02 14:10:02 +0000
committerdavidovski <david@davidovski.xyz>2023-02-02 14:10:02 +0000
commitf29d569cd33a73da5ad675f43a34ad53c5cc9bc6 (patch)
tree76fe6267f8307e7630fc6f53ff99a9767ad40de0 /skip/samba/pidl.patch
parent05d004dfe0c9a9d898fac8a4a0292ca2a74ca391 (diff)
Work
Diffstat (limited to 'skip/samba/pidl.patch')
-rw-r--r--skip/samba/pidl.patch114
1 files changed, 114 insertions, 0 deletions
diff --git a/skip/samba/pidl.patch b/skip/samba/pidl.patch
new file mode 100644
index 0000000..60359e5
--- /dev/null
+++ b/skip/samba/pidl.patch
@@ -0,0 +1,114 @@
+From 838457ac4f9f3f6c1bb5936738566210a62cbdc5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?G=C3=BCnther=20Deschner?= <gd@samba.org>
+Date: Tue, 27 Aug 2019 15:25:13 +0200
+Subject: [PATCH] Revert "waf: install: Remove installation of PIDL and
+ manpages."
+
+This reverts commit e24e344d0da58013fd5fa404529fe1d25ef403bf.
+
+BUG: https://bugzilla.samba.org/show_bug.cgi?id=14103
+
+Guenther
+
+Signed-off-by: Guenther Deschner <gd@samba.org>
+---
+ pidl/lib/wscript_build | 37 +++++++++++++++++++++++++++++++++++++
+ pidl/wscript | 38 ++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 75 insertions(+)
+ create mode 100644 pidl/lib/wscript_build
+
+diff --git a/pidl/lib/wscript_build b/pidl/lib/wscript_build
+new file mode 100644
+index 00000000000..54b3170c4e2
+--- /dev/null
++++ b/pidl/lib/wscript_build
+@@ -0,0 +1,33 @@
++#!/usr/bin/env python
++
++# install the pidl modules
++bld.INSTALL_FILES(bld.env.PERL_LIB_INSTALL_DIR,
++ '''
++ Parse/Pidl.pm
++ Parse/Pidl/Samba4.pm
++ Parse/Pidl/CUtil.pm
++ Parse/Pidl/Expr.pm
++ Parse/Pidl/Wireshark/Conformance.pm
++ Parse/Pidl/Wireshark/NDR.pm
++ Parse/Pidl/ODL.pm
++ Parse/Pidl/Dump.pm
++ Parse/Pidl/Util.pm
++ Parse/Pidl/Samba4/Header.pm
++ Parse/Pidl/Samba4/COM/Header.pm
++ Parse/Pidl/Samba4/COM/Proxy.pm
++ Parse/Pidl/Samba4/COM/Stub.pm
++ Parse/Pidl/Samba4/TDR.pm
++ Parse/Pidl/Samba4/NDR/Server.pm
++ Parse/Pidl/Samba4/NDR/Client.pm
++ Parse/Pidl/Samba4/NDR/Parser.pm
++ Parse/Pidl/Samba4/Python.pm
++ Parse/Pidl/Samba4/Template.pm
++ Parse/Pidl/IDL.pm
++ Parse/Pidl/Typelist.pm
++ Parse/Pidl/Samba3/ClientNDR.pm
++ Parse/Pidl/Samba3/ServerNDR.pm
++ Parse/Pidl/Compat.pm
++ Parse/Pidl/NDR.pm
++ ''',
++ flat=False)
++
+diff --git a/pidl/wscript b/pidl/wscript
+index 01b71bd8b27..a2a15d36851 100644
+--- a/pidl/wscript
++++ b/pidl/wscript
+@@ -28,12 +28,51 @@
+ 1.05):
+ raise Errors.WafError('perl module "Parse::Yapp::Driver" not found')
+
++ # we need a recent version of MakeMaker to get the right man page names
++ if conf.CHECK_PERL_MANPAGE():
++ conf.env.PERLMAN1EXT = conf.CHECK_PERL_MANPAGE(section='1')
++ conf.env.PERLMAN3EXT = conf.CHECK_PERL_MANPAGE(section='3')
++ conf.DEFINE('HAVE_PERL_MAKEMAKER', 1)
++
+ # yapp is used for building the parser
+ if not conf.find_program('yapp', var='YAPP'):
+ raise Errors.WafError('yapp not found')
++ conf.find_program('pod2man', var='POD2MAN')
+
+ def build(bld):
++ bld.INSTALL_FILES('${BINDIR}', 'pidl', chmod=MODE_755, perl_fixup=True)
++
++ bld.RECURSE('lib')
++
++ if not bld.CONFIG_SET('HAVE_PERL_MAKEMAKER'):
++ return
++
++ pidl_manpages = {
++ 'pidl': 'man1/pidl.${PERLMAN1EXT}',
++ 'lib/Parse/Pidl/NDR.pm': 'man3/Parse::Pidl::NDR.${PERLMAN3EXT}',
++ 'lib/Parse/Pidl/Wireshark/Conformance.pm': 'man3/Parse::Pidl::Wireshark::Conformance.${PERLMAN3EXT}',
++ 'lib/Parse/Pidl/Dump.pm': 'man3/Parse::Pidl::Dump.${PERLMAN3EXT}',
++ 'lib/Parse/Pidl/Util.pm': 'man3/Parse::Pidl::Util.${PERLMAN3EXT}',
++ 'lib/Parse/Pidl/Wireshark/NDR.pm': 'man3/Parse::Pidl::Wireshark::NDR.${PERLMAN3EXT}'
++ }
++
++ for k in pidl_manpages.keys():
++ pidl_manpages[k] = bld.EXPAND_VARIABLES(pidl_manpages[k])
++
++ # use perl to build the manpages
++ bld.env.pidl_srcdir = os.path.join(bld.srcnode.abspath(), 'pidl')
+
++ bld.SET_BUILD_GROUP('final')
++ if 'POD2MAN' in bld.env and bld.env['POD2MAN'] != '':
++ for src in pidl_manpages.keys():
++ manpage = pidl_manpages[src]
++ section = manpage.rsplit( ".", 1)[1]
++ bld(rule='${POD2MAN} -c "Samba Documentation" -s %s ${SRC} ${TGT}' % section,
++ shell=True,
++ source=src,
++ install_path=os.path.dirname(bld.EXPAND_VARIABLES('${MANDIR}/'+manpage)),
++ target=os.path.basename(manpage))
++
+ # we want to prefer the git version of the parsers if we can.
+ # Only if the source has changed do we want to re-run yapp
+ # But we force the developer to use the pidl standalone build