Date: Thu, 15 Mar 2007 17:08:43 +0300 From: Eygene Ryabinkin <rea-fbsd@codelabs.ru> To: FreeBSD-gnats-submit@FreeBSD.org, freebsd-ports-bugs@FreeBSD.org Cc: anholt@freebsd.org Subject: Re: ports/109495: update devel/git to 1.5.0.1 Message-ID: <20070315140843.GQ99047@codelabs.ru> In-Reply-To: <20070226065704.GB1084@codelabs.ru> References: <E1HL1tP-000JQf-Ax@pobox.codelabs.ru> <200702241850.l1OIo55R095994@freefall.freebsd.org> <20070226065704.GB1084@codelabs.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
An update from 1.4.4.4 to 1.5.0.3 was produced, because 1.5.0.2 fixed two SEGV's in the git http utils. The patch introduces new option for disabling the git gui tools (and dropping the Tcl/Tk dependency). The HTTP part of git still depends on the ports/110270 (the patches from cURL CVS to cURL-7.16.1 that fixes another two SEGVs for git). Once they will be committed, the http part of git will be working: I've managed to clone and then push the entire linux-2.6 repository (about 260 Mb) over HTTP without any errors. The clone of the ModularXorg repository at http://git.xbsd.org/freebsd/ports.git also showed no errors. I am planning to make my patch to the Makefile to be the part of the next git distribution, but it will depend on the Git people. Probably the next version will not need the files/patch-Makefile. OK, shutting up. The patch for an upgrade to 1.5.0.3 is below. diff -urN git.orig/Makefile git/Makefile --- git.orig/Makefile Sat Feb 24 11:15:53 2007 +++ git/Makefile Thu Mar 15 08:20:23 2007 @@ -6,7 +6,7 @@ # PORTNAME= git -PORTVERSION= 1.4.4.4 +PORTVERSION= 1.5.0.3 CATEGORIES= devel MASTER_SITES= http://www.kernel.org/pub/software/scm/git/ @@ -19,8 +19,7 @@ xmlto:${PORTSDIR}/textproc/xmlto RUN_DEPENDS= curl:${PORTSDIR}/ftp/curl \ cvsps:${PORTSDIR}/devel/cvsps-devel \ - ${SITE_PERL}/Error.pm:${PORTSDIR}/lang/p5-Error \ - wish8.4:${PORTSDIR}/x11-toolkits/tk84 + ${SITE_PERL}/Error.pm:${PORTSDIR}/lang/p5-Error LIB_DEPENDS= expat.6:${PORTSDIR}/textproc/expat2 CONFLICTS= cogito-0.1[012] git-4.* @@ -47,6 +46,7 @@ git-clone.1 \ git-commit-tree.1 \ git-commit.1 \ + git-config.1 \ git-convert-objects.1 \ git-count-objects.1 \ git-cvsexportcommit.1 \ @@ -59,12 +59,15 @@ git-diff-stages.1 \ git-diff-tree.1 \ git-diff.1 \ + git-fast-import.1 \ git-fetch-pack.1 \ git-fetch.1 \ git-fmt-merge-msg.1 \ git-format-patch.1 \ git-for-each-ref.1 \ + git-fsck.1 \ git-fsck-objects.1 \ + git-gc.1 \ git-get-tar-commit-id.1 \ git-grep.1 \ git-hash-object.1 \ @@ -72,6 +75,7 @@ git-http-push.1 \ git-imap-send.1 \ git-index-pack.1 \ + git-init.1 \ git-init-db.1 \ git-instaweb.1 \ git-local-fetch.1 \ @@ -84,6 +88,7 @@ git-mailsplit.1 \ git-merge.1 \ git-merge-base.1 \ + git-merge-file.1 \ git-merge-index.1 \ git-merge-one-file.1 \ git-merge-tree.1 \ @@ -106,7 +111,9 @@ git-read-tree.1 \ git-rebase.1 \ git-receive-pack.1 \ + git-reflog.1 \ git-relink.1 \ + git-remote.1 \ git-repack.1 \ git-repo-config.1 \ git-request-pull.1 \ @@ -152,6 +159,7 @@ MAN3= Git.3 MAN7= git.7 +USE_BZIP2= yes USE_PERL5= yes USE_PYTHON= yes USE_ICONV= yes @@ -161,12 +169,30 @@ CFLAGS+= -I${LOCALBASE}/include MAKE_ENV+= CURLDIR=${LOCALBASE} \ NEEDS_LIBICONV=yes \ + WITH_P4IMPORT=yes \ LDFLAGS="-L${LOCALBASE}/lib" \ PYTHON_PATH=${LOCALBASE}/bin/python \ PERL_PATH=${PERL} MAKE_ARGS+= prefix="${PREFIX}" +.ifndef WITHOUT_GUI +PLIST_SUB+= GUI="" +GITGUIVERSION= 0.6-GITGUI +RUN_DEPENDS+= wish8.4:${PORTSDIR}/x11-toolkits/tk84 +.else +PLIST_SUB+= GUI="@comment " +MAKE_ENV+= NO_GUI=yes +.endif + +# We should place version files to avoid git's attempt to figure it by itself +post-patch: + ${ECHO} "GIT_VERSION = ${PORTVERSION}-dirty" > ${WRKSRC}/GIT-VERSION-FILE; ${ECHO} '#!/bin/sh' > ${WRKSRC}/GIT-VERSION-GEN +.ifndef WITHOUT_GUI + ${ECHO} "GIT_VERSION = ${GITGUIVERSION}-dirty" > ${WRKSRC}/git-gui/GIT-VERSION-FILE; ${ECHO} '#!/bin/sh' > ${WRKSRC}/git-gui/GIT-VERSION-GEN +.endif + post-install: + ${TEST} -f ${PREFIX}/lib/perl5/${PERL_VERSION}/mach/perllocal.pod && ${RM} -f ${PREFIX}/lib/perl5/${PERL_VERSION}/mach/perllocal.pod ${MKDIR} ${PREFIX}/share/emacs/site-lisp/git ${MKDIR} ${PREFIX}/lib/xemacs/site-lisp/git ${INSTALL_DATA} ${WRKSRC}/contrib/emacs/git.el \ diff -urN git.orig/distinfo git/distinfo --- git.orig/distinfo Sat Feb 24 11:15:53 2007 +++ git/distinfo Thu Mar 15 08:13:19 2007 @@ -1,3 +1,3 @@ -MD5 (git-1.4.4.4.tar.gz) = 99bc7ea441226f792b6f796a838e7ef0 -SHA256 (git-1.4.4.4.tar.gz) = 53478949d178df1363c23008876b6791e28df8dcbd9851ddadb7cf10adf66a65 -SIZE (git-1.4.4.4.tar.gz) = 1054130 +MD5 (git-1.5.0.3.tar.bz2) = ea7a01dbde1da8fce235dde689bfeeea +SHA256 (git-1.5.0.3.tar.bz2) = 950be95ece89a4c03aa22cd93626a27619536d1b9d40631b4369c339d63c120a +SIZE (git-1.5.0.3.tar.bz2) = 1047037 diff -urN git.orig/files/patch-Makefile git/files/patch-Makefile --- git.orig/files/patch-Makefile Sat Feb 24 11:15:53 2007 +++ git/files/patch-Makefile Thu Mar 15 08:17:44 2007 @@ -1,21 +1,118 @@ ---- Makefile.orig Tue Nov 7 20:47:34 2006 -+++ Makefile Tue Nov 7 20:47:55 2006 -@@ -178,7 +178,8 @@ - git-send-email.perl git-svn.perl +--- Makefile.orig Mon Mar 5 05:15:33 2007 ++++ Makefile Thu Mar 15 08:16:45 2007 +@@ -108,6 +108,10 @@ + # Define NO_PERL_MAKEMAKER if you cannot use Makefiles generated by perl's + # MakeMaker (e.g. using ActiveState under Cygwin). + # ++# Define NO_GUI if you do not want Tcl/Tk GUI. ++# ++# Define WITH_P4IMPORT to build and install Python git-p4import script. ++# - SCRIPT_PYTHON = \ -- git-merge-recursive-old.py -+ git-merge-recursive-old.py \ -+ git-p4import.py + GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE + @$(SHELL_PATH) ./GIT-VERSION-GEN +@@ -193,9 +197,19 @@ + git-svnimport.perl git-cvsexportcommit.perl \ + git-send-email.perl git-svn.perl ++SCRIPT_PYTHON = \ ++ git-p4import.py ++ ++ifdef WITH_P4IMPORT ++SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \ ++ $(patsubst %.perl,%,$(SCRIPT_PERL)) \ ++ $(patsubst %.py,%,$(SCRIPT_PYTHON)) \ ++ git-cherry-pick git-status git-instaweb ++else SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \ $(patsubst %.perl,%,$(SCRIPT_PERL)) \ -@@ -823,7 +824,7 @@ - $(INSTALL) $(ALL_PROGRAMS) '$(DESTDIR_SQ)$(gitexecdir_SQ)' + git-cherry-pick git-status git-instaweb ++endif + + # ... and all the rest that could be moved out of bindir to gitexecdir + PROGRAMS = \ +@@ -238,6 +252,9 @@ + ifndef PERL_PATH + PERL_PATH = /usr/bin/perl + endif ++ifndef PYTHON_PATH ++ PYTHON_PATH = /usr/local/bin/python ++endif + + export PERL_PATH + +@@ -612,6 +629,7 @@ + + SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH)) + PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH)) ++PYTHON_PATH_SQ = $(subst ','\'',$(PYTHON_PATH)) + + LIBS = $(GITLIBS) $(EXTLIBS) + +@@ -632,7 +650,9 @@ + endif + + all:: ++ifndef NO_GUI + $(MAKE) -C git-gui all ++endif + $(MAKE) -C perl PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' all + $(MAKE) -C templates + +@@ -665,6 +685,15 @@ + + $(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak + ++$(patsubst %.py,%,$(SCRIPT_PYTHON)) : % : %.py ++ rm -f $@ $@+ ++ sed -e '1s|#!.*/python|#!$(PYTHON_PATH_SQ)|' \ ++ -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \ ++ -e 's/@@NO_CURL@@/$(NO_CURL)/g' \ ++ $@.py >$@+ ++ chmod +x $@+ ++ mv $@+ $@ ++ + perl/perl.mak: GIT-CFLAGS + $(MAKE) -C perl PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F) + +@@ -863,7 +892,9 @@ $(INSTALL) git$X gitk '$(DESTDIR_SQ)$(bindir_SQ)' $(MAKE) -C templates DESTDIR='$(DESTDIR_SQ)' install -- $(MAKE) -C perl install -+ $(MAKE) -C perl pure_install - $(INSTALL) -d -m755 '$(DESTDIR_SQ)$(GIT_PYTHON_DIR_SQ)' - $(INSTALL) $(PYMODULES) '$(DESTDIR_SQ)$(GIT_PYTHON_DIR_SQ)' + $(MAKE) -C perl prefix='$(prefix_SQ)' install ++ifndef NO_GUI + $(MAKE) -C git-gui install ++endif if test 'z$(bindir_SQ)' != 'z$(gitexecdir_SQ)'; \ + then \ + ln -f '$(DESTDIR_SQ)$(bindir_SQ)/git$X' \ +@@ -897,12 +928,20 @@ + @mkdir -p $(GIT_TARNAME) + @cp git.spec $(GIT_TARNAME) + @echo $(GIT_VERSION) > $(GIT_TARNAME)/version ++ifndef NO_GUI + @$(MAKE) -C git-gui TARDIR=../$(GIT_TARNAME)/git-gui dist-version ++endif ++ifndef NO_GUI + $(TAR) rf $(GIT_TARNAME).tar \ + $(GIT_TARNAME)/git.spec \ + $(GIT_TARNAME)/version \ + $(GIT_TARNAME)/git-gui/version \ + $(GIT_TARNAME)/git-gui/credits ++else ++ $(TAR) rf $(GIT_TARNAME).tar \ ++ $(GIT_TARNAME)/git.spec \ ++ $(GIT_TARNAME)/version ++endif + @rm -rf $(GIT_TARNAME) + gzip -f -9 $(GIT_TARNAME).tar + +@@ -943,7 +982,9 @@ + rm -f gitweb/gitweb.cgi + $(MAKE) -C Documentation/ clean + $(MAKE) -C perl clean ++ifndef NO_GUI + $(MAKE) -C git-gui clean ++endif + $(MAKE) -C templates/ clean + $(MAKE) -C t/ clean + rm -f GIT-VERSION-FILE GIT-CFLAGS diff -urN git.orig/pkg-plist git/pkg-plist --- git.orig/pkg-plist Sat Feb 24 11:15:53 2007 +++ git/pkg-plist Thu Mar 15 08:11:32 2007 @@ -1,5 +1,6 @@ bin/git bin/git-add +bin/git-add--interactive bin/git-am bin/git-annotate bin/git-apply @@ -16,10 +17,12 @@ bin/git-checkout-index bin/git-cherry bin/git-cherry-pick +%%GUI%%bin/git-citool bin/git-clean bin/git-clone bin/git-commit bin/git-commit-tree +bin/git-config bin/git-convert-objects bin/git-count-objects bin/git-cvsexportcommit @@ -32,19 +35,24 @@ bin/git-diff-index bin/git-diff-stages bin/git-diff-tree +bin/git-fast-import bin/git-fetch bin/git-fetch-pack bin/git-fmt-merge-msg bin/git-for-each-ref bin/git-format-patch +bin/git-fsck bin/git-fsck-objects +bin/git-gc bin/git-get-tar-commit-id bin/git-grep +%%GUI%%bin/git-gui bin/git-hash-object bin/git-http-fetch bin/git-http-push bin/git-imap-send bin/git-index-pack +bin/git-init bin/git-init-db bin/git-instaweb bin/git-local-fetch @@ -57,13 +65,12 @@ bin/git-mailsplit bin/git-merge bin/git-merge-base +bin/git-merge-file bin/git-merge-index bin/git-merge-octopus bin/git-merge-one-file bin/git-merge-ours -bin/git-merge-recur bin/git-merge-recursive -bin/git-merge-recursive-old bin/git-merge-resolve bin/git-merge-stupid bin/git-merge-tree @@ -86,7 +93,9 @@ bin/git-read-tree bin/git-rebase bin/git-receive-pack +bin/git-reflog bin/git-relink +bin/git-remote bin/git-repack bin/git-repo-config bin/git-request-pull @@ -137,7 +146,6 @@ lib/xemacs/site-lisp/git/vc-git.el share/emacs/site-lisp/git/git.el share/emacs/site-lisp/git/vc-git.el -share/git-core/python/gitMergeCommon.py share/git-core/templates/description share/git-core/templates/hooks/applypatch-msg share/git-core/templates/hooks/commit-msg @@ -158,7 +166,5 @@ @dirrm share/git-core/templates/branches @dirrm share/git-core/templates/hooks @dirrm share/git-core/templates/info -@dirrm share/git-core/templates/remotes @dirrm share/git-core/templates -@dirrm share/git-core/python @dirrm share/git-core
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070315140843.GQ99047>