Subversion 1.7 and 1.8

Jim Jagielski jimjag at gmail.com
Mon Aug 19 13:40:37 PDT 2013


Here is the proposed subversion17 port (updated for svn 1.7.11)...



On Mon, Aug 19, 2013 at 7:42 AM, Jim Jagielski <jimjag at gmail.com> wrote:

> It seems to me that this is *still* an issue... No further development
> upstream has been done to address this, afaict, so where does that leave us?
>
> I repeat my offer to maintain subversion1.7
>
>
> On Mon, Aug 5, 2013 at 8:15 AM, Jim Jagielski <jimjag at gmail.com> wrote:
>
>> Look for posts regarding how svn 1.8 has dropped neon and the phrase
>> 'svn_delta already in use'
>>
>> You'll find posts from the svn team saying that its a git problem and the
>> git team saying svn has changed the API, etc...
>>
>>
>> On Sun, Aug 4, 2013 at 10:36 PM, Lawrence Velázquez <larryv at macports.org>wrote:
>>
>>> On Aug 2, 2013, at 10:04 AM, Jim Jagielski <jimjag at gmail.com> wrote:
>>>
>>> > Looking over some of the threads related to this on the git and svn
>>> lists,
>>> > I don't think so :)
>>>
>>> Could you point us to some of these threads? I'm trying to find them,
>>> with little success. It's entirely possible that I'm just inept at
>>> searching.
>>>
>>> vq
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-dev/attachments/20130819/d2e50075/attachment-0001.html>
-------------- next part --------------
Index: subversion17/Portfile
===================================================================
--- subversion17/Portfile	(revision 0)
+++ subversion17/Portfile	(working copy)
@@ -0,0 +1,155 @@
+# $Id$
+
+PortSystem 1.0
+
+name			subversion17
+version			1.7.11
+revision		0
+categories		devel
+platforms		darwin
+maintainers		jimjag at gmail.com
+description		subversion (svn) -- a version control system designed to be a better cvs
+license			Apache-2
+
+long_description	Subversion (svn) is a version control system designed to be \
+			as similar to cvs(1) as possible, while fixing many \
+			outstanding problems with cvs(1).
+
+homepage		http://subversion.apache.org/
+master_sites		apache:subversion
+use_bzip2		yes
+checksums	md5	05768703a35a52cdc7b3a2dda9340b51 \
+		sha1	d82e187803043b74c072cd5a861ac02e4a027684 \
+		rmd160	39bb7877bb8550f88f8056b6da25ccf139aa61ac
+
+depends_lib		port:expat port:neon \
+			port:apr port:apr-util \
+			port:db46 port:sqlite3 \
+			port:gettext port:libiconv \
+			port:serf1 port:cyrus-sasl2 \
+			port:file port:libcomerr
+depends_run		port:curl-ca-bundle
+
+test.run		yes
+test.target		check
+test.env		CLEANUP=true
+
+patchfiles		patch-Makefile.in.diff config_impl.h.patch
+
+post-patch {		reinplace "s|__PREFIX__|${prefix}|" ${worksrcpath}/subversion/libsvn_subr/config_impl.h
+			}
+
+configure.args		--with-berkeley-db=:${prefix}/include/db46:${prefix}/lib/db46:db-4.6 \
+			--with-neon=${prefix} --with-apr=${prefix}/bin/apr-1-config \
+			--with-apr-util=${prefix}/bin/apu-1-config --without-apxs \
+			--mandir=\\\${prefix}/share/man \
+			--disable-neon-version-check --with-serf=${prefix} \
+			--with-sasl=${prefix} \
+			--with-libmagic=${prefix}
+
+use_parallel_build	yes
+build.target		all tools
+destroot.target-append install-tools
+
+pre-test {		set x {}
+			fs-traverse dir ${worksrcpath}/subversion {
+				if {[file tail ${dir}] == ".libs" && [file isdirectory ${dir}]} {
+					lappend x ${dir}
+					continue
+					}
+				}
+
+			test.env-append DYLD_LIBRARY_PATH=[join ${x} ":"]
+			}
+
+pre-configure {		reinplace "s|hardcode_direct=yes|hardcode_direct=no|g" \
+				${worksrcpath}/configure
+			}
+
+post-configure {	reinplace "s|need_relink=yes|need_relink=no|g" \
+				${worksrcpath}/libtool
+			}
+
+post-destroot {		# install global config file so curl-ca-bundle certs are used
+			xinstall -d ${destroot}${prefix}/etc/subversion
+			xinstall -m 644 ${filespath}/servers.default ${destroot}${prefix}/etc/subversion
+			# install bash completion file
+			set completions_path ${destroot}${prefix}/share/bash-completion/completions 
+			xinstall -d ${completions_path} 
+			xinstall -m 644 ${worksrcpath}/tools/client-side/bash_completion ${completions_path}/subversion 
+			}
+
+post-activate {		if {![file exists ${prefix}/etc/subversion/servers]} {
+				copy ${prefix}/etc/subversion/servers.default ${prefix}/etc/subversion/servers
+				}
+			}
+
+variant mod_dav_svn 	description {Install the subversion apache module (mod_dav_svn)} {
+			depends_build path:apache2/bin/apxs:apache2
+			configure.args-append \
+				--with-apxs=${prefix}/apache2/bin/apxs \
+				--disable-mod-activation
+			configure.args-delete --without-apxs
+
+			destroot.violate_mtree yes
+			}
+
+variant no_neon 	description {Build without neon (http/https support)} {
+			depends_lib-delete	port:neon
+			configure.args-append	--without-neon
+			configure.args-delete	--with-neon=${prefix}
+			}
+
+variant no_bdb		description {Build without support for BerkeleyDB repositories} {
+			depends_lib-delete	port:db46
+			configure.args-delete	--with-berkeley-db=:${prefix}/include/db46:${prefix}/lib/db46:db-4.6
+			configure.args-append	--without-berkeley-db
+			}
+
+variant mac_os_x_server_mod_dav_svn 	description {Unsupported - attempt to build the subversion apache module with apple supplied apache2} {
+					configure.args-append \
+						--with-apxs=/opt/apache2/bin/apxs \
+						--disable-mod-activation
+					configure.args-delete --without-apxs
+
+					destroot.violate_mtree yes
+
+					post-install {
+							ui_warn "This variant (+mac_os_x_server_mod_dav_svn) builds against the Apple-supplied apache2 in /opt/apache2 and thus may have problems that the normal variant (+mod_dav_svn) which builds against the macports supplied apache2 will not have."
+					}
+					}
+
+variant tools 		description {Install some optional extra subversion tools} {
+			post-destroot {
+				xinstall -d -m 755 ${destroot}${prefix}/share/${name}
+				delete ${worksrcpath}/tools/client-side/svnmucc/
+				delete ${worksrcpath}/tools/diff/
+				delete ${worksrcpath}/tools/server-side/mod_dontdothat
+				eval delete [glob ${worksrcpath}/tools/server-side/*{.o,.lo,.c}]
+				delete ${worksrcpath}/tools/server-side/svn-populate-node-origins-index
+				delete ${worksrcpath}/tools/server-side/svn-rep-sharing-stats
+				delete ${worksrcpath}/tools/server-side/svnauthz-validate
+				copy ${worksrcpath}/tools ${destroot}${prefix}/share/${name}/tools
+				}
+			}
+
+# see http://subversion.tigris.org/issues/show_bug.cgi?id=2464
+variant unicode_path	description {Installs a hack to workaround Mac OS X unicode path issues} {
+			patchfiles-append patch-osx_unicode_precomp.diff
+			post-install {
+				ui_warn "This variant (+unicode_path) implements a hack to deal with composed/decomposed unicode handling on Mac OS X which is different from linux and windows. It is an implementation of solution 1 from http://svn.collab.net/repos/svn/trunk/notes/unicode-composition-for-filenames which _WILL_ break some setups. Please be sure you understand what you are asking for when you install this variant."
+				}
+			}
+
+variant disable_keychain	description {Disables support for the Mac OS X Keychain} {
+					configure.args-append --disable-keychain
+				}
+
+# CarbonCore/MacTypes.h: No such file or directory
+platform puredarwin {		configure.args-append \
+					--disable-keychain
+				}
+
+livecheck.type	regex
+livecheck.url	http://svn.apache.org/repos/asf/subversion/tags/
+livecheck.regex	"(\\d+\\.\\d+\\.\\d+)/"
Index: subversion17/files/config_impl.h.patch
===================================================================
--- subversion17/files/config_impl.h.patch	(revision 0)
+++ subversion17/files/config_impl.h.patch	(working copy)
@@ -0,0 +1,11 @@
+--- subversion/libsvn_subr/config_impl.h.orig	2011-02-12 00:18:15.000000000 +1100
++++ subversion/libsvn_subr/config_impl.h	2012-02-21 21:07:53.000000000 +1100
+@@ -121,7 +121,7 @@ svn_error_t *svn_config__parse_registry(
+ #  define SVN_CONFIG__SYS_DIRECTORY   "subversion"
+ #  define SVN_CONFIG__USR_DIRECTORY   "subversion"
+ #else  /* ! WIN32 && ! __HAIKU__ */
+-#  define SVN_CONFIG__SYS_DIRECTORY   "/etc/subversion"
++#  define SVN_CONFIG__SYS_DIRECTORY   "__PREFIX__/etc/subversion"
+ #  define SVN_CONFIG__USR_DIRECTORY   ".subversion"
+ #endif /* WIN32 */
+ 
Index: subversion17/files/patch-Makefile.in.diff
===================================================================
--- subversion17/files/patch-Makefile.in.diff	(revision 0)
+++ subversion17/files/patch-Makefile.in.diff	(working copy)
@@ -0,0 +1,11 @@
+--- Makefile.in.orig	Sun Aug 17 19:45:25 2003
++++ Makefile.in	Sun Aug 17 19:45:54 2003
+@@ -204,7 +204,7 @@
+ clean: external-clean local-clean
+ distclean: external-distclean local-distclean
+ extraclean: external-extraclean local-extraclean
+-install: external-install local-install revision-install
++install: external-install local-install
+ 
+ @INCLUDE_OUTPUTS@
+ 
Index: subversion17/files/servers.default
===================================================================
--- subversion17/files/servers.default	(revision 0)
+++ subversion17/files/servers.default	(working copy)
@@ -0,0 +1,2 @@
+[global]
+ssl-trust-default-ca = yes


More information about the macports-dev mailing list