diff --git a/contrib/src/pcre/SHA512SUMS b/contrib/src/pcre/SHA512SUMS
new file mode 100644
index 0000000000000000000000000000000000000000..5c2c2935b0ac6c02eca60acab8af77a72933d8d0
--- /dev/null
+++ b/contrib/src/pcre/SHA512SUMS
@@ -0,0 +1 @@
+e94c652b40de60b391e28afbddc67b5a034650f6f62027e52f2d7aef53caf5f0da9f2d4f6872d1558f965dd9d4d696e5e23d2a50f20a4fbc9f0a707fb6f55fae  pcre-8.35.tar.bz2
diff --git a/contrib/src/pcre/rules.mak b/contrib/src/pcre/rules.mak
new file mode 100644
index 0000000000000000000000000000000000000000..44d2003db4303eaa02d715c0613229918308f5fa
--- /dev/null
+++ b/contrib/src/pcre/rules.mak
@@ -0,0 +1,23 @@
+# Perl Compatible Regular Expression
+
+PCRE_VERSION := 8.35
+PCRE_URL := ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-$(PCRE_VERSION).tar.bz2
+
+PKGS += pcre
+ifeq ($(call need_pkg," >= 8.33"),)
+PKGS_FOUND += pcre
+endif
+
+$(TARBALLS)/pcre-$(PCRE_VERSION).tar.bz2:
+	$(call download,$(PCRE_URL))
+
+.sum-pcre: pcre-$(PCRE_VERSION).tar.bz2
+
+pcre: pcre-$(PCRE_VERSION).tar.bz2 .sum-pcre
+	$(UNPACK)
+	$(MOVE)
+
+.pcre: pcre
+	cd $< && $(HOSTVARS) ./configure $(HOSTCONF)
+	cd $< && $(MAKE) install
+	touch $@