summaryrefslogtreecommitdiff
path: root/devel/ldapsdk
diff options
context:
space:
mode:
authordholland <dholland>2011-10-14 01:01:55 +0000
committerdholland <dholland>2011-10-14 01:01:55 +0000
commit42b93b8a2f2a1b1d39920de5456a676d1f3cd55b (patch)
tree62608c510970d8a7cf3295d43ac21b14ae06f245 /devel/ldapsdk
parent2f5a9e5a1b6313f4d9dd63e425e2db1b1778676b (diff)
downloadpkgsrc-42b93b8a2f2a1b1d39920de5456a676d1f3cd55b.tar.gz
"Fix" gmake lossage with an inline multiline perl script.
This package still doesn't build, but it gets a bit further.
Diffstat (limited to 'devel/ldapsdk')
-rw-r--r--devel/ldapsdk/distinfo3
-rw-r--r--devel/ldapsdk/patches/patch-config_rules_mk75
2 files changed, 77 insertions, 1 deletions
diff --git a/devel/ldapsdk/distinfo b/devel/ldapsdk/distinfo
index fbd0ec7ab10..94fc0cd3877 100644
--- a/devel/ldapsdk/distinfo
+++ b/devel/ldapsdk/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.6 2011/09/07 23:44:27 joerg Exp $
+$NetBSD: distinfo,v 1.7 2011/10/14 01:01:55 dholland Exp $
SHA1 (ldapsdk_12311998.tar.gz) = fc132cf2d7bef6f3b93486fabd73c1f7f202d04e
RMD160 (ldapsdk_12311998.tar.gz) = d0ede32efd1e33874d5fc74c97d9d4a053709543
@@ -10,3 +10,4 @@ SHA1 (patch-ad) = 023fb7d066a3b0e9fde391e37ce14751c7816e7d
SHA1 (patch-ae) = fe40aa1668206bd63861844fc34574c749aa22f0
SHA1 (patch-af) = 20869b8cbc7becee026adece14b9b9a250531d8a
SHA1 (patch-config-bsdecho.c) = a5f916c44c55a812793c25760771bff5a1400ed0
+SHA1 (patch-config_rules_mk) = 6ddd1ee99f4058eeddd3f34f6921c1573abcd125
diff --git a/devel/ldapsdk/patches/patch-config_rules_mk b/devel/ldapsdk/patches/patch-config_rules_mk
new file mode 100644
index 00000000000..0560d135b15
--- /dev/null
+++ b/devel/ldapsdk/patches/patch-config_rules_mk
@@ -0,0 +1,75 @@
+$NetBSD: patch-config_rules_mk,v 1.1 2011/10/14 01:01:55 dholland Exp $
+
+Sleazy patch to hack around incompatibility between gmake and perl.
+
+(Without this perl spews "syntax error at -e line ##, near ..." for,
+AFAICT, any line that begins with a keyword. It is because gmake is
+passing the backslashes through; sh of course preserves them within
+single quotes, so they get to perl, and perl really doesn't like what
+it apparently considers stray backslashes all over the script text.
+Naturally, you can't *not* have the backslashes, or gmake won't allow
+the thing to span multiple lines. Hurray for gmake.)
+
+--- config/rules.mk~ 2011-10-14 00:17:43.000000000 +0000
++++ config/rules.mk
+@@ -740,33 +740,33 @@ ifneq (,$(filter-out OS2 WINNT,$(OS_ARCH
+ # Can't use sed because of its 4000-char line length limit, so resort to perl
+ .DEFAULT:
+ @$(PERL) -e ' \
+- open(MD, "< $(DEPENDENCIES)"); \
+- while (<MD>) { \
+- if (m@ \.*/*$< @) { \
+- $$found = 1; \
+- last; \
+- } \
+- } \
+- if ($$found) { \
+- print "Removing stale dependency $< from $(DEPENDENCIES)\n"; \
+- seek(MD, 0, 0); \
+- $$tmpname = "$(OBJDIR)/fix.md" . $$$$; \
+- open(TMD, "> " . $$tmpname); \
+- while (<MD>) { \
+- s@ \.*/*$< @ @; \
+- if (!print TMD "$$_") { \
+- unlink(($$tmpname)); \
+- exit(1); \
+- } \
+- } \
+- close(TMD); \
+- if (!rename($$tmpname, "$(DEPENDENCIES)")) { \
+- unlink(($$tmpname)); \
+- } \
+- } elsif ("$<" ne "$(DEPENDENCIES)") { \
+- print "$(MAKE): *** No rule to make target $<. Stop.\n"; \
+- exit(1); \
+- }'
++ nop; open(MD, "< $(DEPENDENCIES)"); \
++ nop; while (<MD>) { \
++ nop; if (m@ \.*/*$< @) { \
++ nop; $$found = 1; \
++ nop; last; \
++ nop; } \
++ nop; } \
++ nop; if ($$found) { \
++ nop; print "Removing stale dependency $< from $(DEPENDENCIES)\n"; \
++ nop; seek(MD, 0, 0); \
++ nop; $$tmpname = "$(OBJDIR)/fix.md" . $$$$; \
++ nop; open(TMD, "> " . $$tmpname); \
++ nop; while (<MD>) { \
++ nop; s@ \.*/*$< @ @; \
++ nop; if (!print TMD "$$_") { \
++ nop; unlink(($$tmpname)); \
++ nop; exit(1); \
++ nop; } \
++ nop; } \
++ nop; close(TMD); \
++ nop; if (!rename($$tmpname, "$(DEPENDENCIES)")) { \
++ nop; unlink(($$tmpname)); \
++ nop; } \
++ nop; } elsif ("$<" ne "$(DEPENDENCIES)") { \
++ nop; print "$(MAKE): *** No rule to make target $<. Stop.\n"; \
++ nop; exit(1); \
++ nop; }'
+ endif
+
+ #############################################################################