To update to a new version of PCRE, the process in the Subversion book is used, http://svnbook.red-bean.com/en/1.0/ch07s04.html; this example updates from pcre 5.0 to pcre 6.7: 1. make a checkout of vendor/pcre/current/ 2. unpack the tarball of pcre-6.7, and copy its contents into the "current" working copy 3. "svn add" and "svn remove" files as appropriate in "current"; tree(1) can be used to check that the manifest of the tarball exactly matches the manifest of the working copy. 4. commit the new contents of "current". 5. tag the working copy: $ svn cp \ https://svn.apache.org/repos/asf/httpd/httpd/vendor/pcre/current \ https://svn.apache.org/repos/asf/httpd/httpd/vendor/pcre/6.7 Finally the vendor branch can be merged into a working copy of httpd/trunk/srclib/pcre as follows: 1. merge the diff between the old version and current: $ svn merge \ http://svn.apache.org/repos/asf/httpd/httpd/vendor/pcre/5.0 \ http://svn.apache.org/repos/asf/httpd/httpd/vendor/pcre/current 2. resolve conflicts 3. commit it Important note: The file pcreposix.h is stored under httpd/httpd/trunk/include instead of httpd/httpd/trunk/srclib/pcre.