Cleaning up INSTALL before 1.5.6

9 messages, 3 authors, 2016-06-15 · open the first message on its own page

Cleaning up INSTALL before 1.5.6

From: Johan Herland <hidden>
Date: 2016-06-15 22:44:43

AFAICS, there's a couple of things that should be changed in the list of 
system requirements:

- cpio is no longer needed due to git-clone now being a builtin

- According to some other thread on this list, curl might no longer be 
needed, as all its users are now builtin, and uses libcurl instead.


Have fun! :)

...Johan

-- 
Johan Herland, [off-list ref]
www.herland.net

[PATCH 1/3] cpio is no longer used by git-clone

From: Johan Herland <hidden>
Date: 2016-06-15 22:44:46

Signed-off-by: Johan Herland <redacted>
---
 INSTALL |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)
diff --git a/INSTALL b/INSTALL
index d9b425f..9888f25 100644
--- a/INSTALL
+++ b/INSTALL
@@ -83,9 +83,6 @@ Issues of note:
 	- "perl" and POSIX-compliant shells are needed to use most of
 	  the barebone Porcelainish scripts.
 
-	- "cpio" is used by git-clone when doing a local (possibly
-	  hardlinked) clone.
-
  - Some platform specific issues are dealt with Makefile rules,
    but depending on your specific installation, you may not
    have all the libraries/tools needed, or you may have
-- 
1.5.6.rc2.128.gf64ae

[PATCH 2/3] Consistency: Use "libcurl" instead of "cURL library" and "curl"

From: Johan Herland <hidden>
Date: 2016-06-15 22:44:46

Signed-off-by: Johan Herland <redacted>
---
 Documentation/git-http-push.txt                    |    4 ++--
 Documentation/howto/setup-git-server-over-http.txt |    2 +-
 Makefile                                           |    2 +-
 configure.ac                                       |    2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/Documentation/git-http-push.txt b/Documentation/git-http-push.txt
index 8d32a92..d69b205 100644
--- a/Documentation/git-http-push.txt
+++ b/Documentation/git-http-push.txt
@@ -15,8 +15,8 @@ DESCRIPTION
 Sends missing objects to remote repository, and updates the
 remote branch.
 
-*NOTE*: This command is temporarily disabled if your cURL
-library is older than 7.16, as the combination has been reported
+*NOTE*: This command is temporarily disabled if your libcurl
+is older than 7.16, as the combination has been reported
 not to work and sometimes corrupts repository.
 
 OPTIONS
diff --git a/Documentation/howto/setup-git-server-over-http.txt b/Documentation/howto/setup-git-server-over-http.txt
index b7d09c1..4032748 100644
--- a/Documentation/howto/setup-git-server-over-http.txt
+++ b/Documentation/howto/setup-git-server-over-http.txt
@@ -186,7 +186,7 @@ Step 3: setup the client
 ------------------------
 
 Make sure that you have HTTP support, i.e. your git was built with
-curl (version more recent than 7.10). The command 'git http-push' with
+libcurl (version more recent than 7.10). The command 'git http-push' with
 no argument should display a usage message.
 
 Then, add the following to your $HOME/.netrc (you can do without, but will be
diff --git a/Makefile b/Makefile
index 1937507..06ebebe 100644
--- a/Makefile
+++ b/Makefile
@@ -13,7 +13,7 @@ all::
 # Define NO_OPENSSL environment variable if you do not have OpenSSL.
 # This also implies MOZILLA_SHA1.
 #
-# Define NO_CURL if you do not have curl installed.  git-http-pull and
+# Define NO_CURL if you do not have libcurl installed.  git-http-pull and
 # git-http-push are not built, and you cannot use http:// and https://
 # transports.
 #
diff --git a/configure.ac b/configure.ac
index 82584e9..7c2856e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -158,7 +158,7 @@ AC_CHECK_LIB([crypto], [SHA1_Init],
 AC_SUBST(NEEDS_SSL_WITH_CRYPTO)
 AC_SUBST(NO_OPENSSL)
 #
-# Define NO_CURL if you do not have curl installed.  git-http-pull and
+# Define NO_CURL if you do not have libcurl installed.  git-http-pull and
 # git-http-push are not built, and you cannot use http:// and https://
 # transports.
 AC_CHECK_LIB([curl], [curl_global_init],
-- 
1.5.6.rc2.128.gf64ae

[PATCH 3/3] The "curl" executable is no longer required

From: Johan Herland <hidden>
Date: 2016-06-15 22:44:46

git-clone.sh was the last user of the "curl" executable. Relevant git
commands now use libcurl instead. This should be reflected in the
install requirements.

Signed-off-by: Johan Herland <redacted>
---

I haven't tested the RPM spec change, but it seems fairly straightforward...

 INSTALL     |    8 ++++----
 git.spec.in |    2 +-
 2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/INSTALL b/INSTALL
index 9888f25..4a4e13f 100644
--- a/INSTALL
+++ b/INSTALL
@@ -67,10 +67,10 @@ Issues of note:
 	  that come with git (git includes the one from Mozilla, and has
 	  its own PowerPC and ARM optimized ones too - see the Makefile).
 
-	- "libcurl" and "curl" executable.  git-http-fetch and
-	  git-fetch use them.  If you do not use http
-	  transfer, you are probably OK if you do not have
-	  them.
+	- libcurl library; git-http-fetch and git-fetch use them.  You
+	  might also want the "curl" executable for debugging purposes.
+	  If you do not use http transfer, you are probably OK if you
+	  do not have them.
 
 	- expat library; git-http-push uses it for remote lock
 	  management over DAV.  Similar to "curl" above, this is optional.
diff --git a/git.spec.in b/git.spec.in
index 97a26be..d946bb1 100644
--- a/git.spec.in
+++ b/git.spec.in
@@ -12,7 +12,7 @@ BuildRequires:	zlib-devel >= 1.2, openssl-devel, 
curl-devel, expat-devel, gettex
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
 Requires:	perl-Git = %{version}-%{release}
-Requires:	zlib >= 1.2, rsync, curl, less, openssh-clients, expat
+Requires:	zlib >= 1.2, rsync, less, openssh-clients, expat
 Provides:	git-core = %{version}-%{release}
 Obsoletes:	git-core <= 1.5.4.2
 Obsoletes:	git-p4
-- 
1.5.6.rc2.128.gf64ae

Re: [PATCH 3/3] The "curl" executable is no longer required

From: David Symonds <hidden>
Date: 2016-06-15 22:44:46

On Sun, Jun 15, 2008 at 8:16 PM, Johan Herland [off-list ref] wrote:
quoted hunk
diff --git a/git.spec.in b/git.spec.in
index 97a26be..d946bb1 100644
--- a/git.spec.in
+++ b/git.spec.in
@@ -12,7 +12,7 @@ BuildRequires:        zlib-devel >= 1.2, openssl-devel,
curl-devel, expat-devel, gettex
 BuildRoot:     %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

 Requires:      perl-Git = %{version}-%{release}
-Requires:      zlib >= 1.2, rsync, curl, less, openssh-clients, expat
+Requires:      zlib >= 1.2, rsync, less, openssh-clients, expat
 Provides:      git-core = %{version}-%{release}
 Obsoletes:     git-core <= 1.5.4.2
 Obsoletes:     git-p4
Shouldn't libcurl still be listed as a requirement? Or is it statically linked?


Dave.

Re: [PATCH 3/3] The "curl" executable is no longer required

From: Johan Herland <hidden>
Date: 2016-06-15 22:44:46

On Sunday 15 June 2008, David Symonds wrote:
On Sun, Jun 15, 2008 at 8:16 PM, Johan Herland [off-list ref] wrote:
quoted
diff --git a/git.spec.in b/git.spec.in
index 97a26be..d946bb1 100644
--- a/git.spec.in
+++ b/git.spec.in
@@ -12,7 +12,7 @@ BuildRequires:        zlib-devel >= 1.2,
openssl-devel, curl-devel, expat-devel, gettex
 BuildRoot:    
%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

 Requires:      perl-Git = %{version}-%{release}
-Requires:      zlib >= 1.2, rsync, curl, less, openssh-clients, expat
+Requires:      zlib >= 1.2, rsync, less, openssh-clients, expat
 Provides:      git-core = %{version}-%{release}
 Obsoletes:     git-core <= 1.5.4.2
 Obsoletes:     git-p4
Shouldn't libcurl still be listed as a requirement? Or is it statically
linked?
4 lines further up in git.spec.in:

BuildRequires:	zlib-devel >= 1.2, openssl-devel, curl-devel, expat-devel, 
gettext  %{!?_without_docs:, xmlto, asciidoc > 6.0.3}


Have fun!

...Johan

-- 
Johan Herland, [off-list ref]
www.herland.net

Re: [PATCH 3/3] The "curl" executable is no longer required

From: David Symonds <hidden>
Date: 2016-06-15 22:44:46

On Sun, Jun 15, 2008 at 8:55 PM, Johan Herland [off-list ref] wrote:
On Sunday 15 June 2008, David Symonds wrote:
quoted
Shouldn't libcurl still be listed as a requirement? Or is it statically
linked?
4 lines further up in git.spec.in:

BuildRequires:  zlib-devel >= 1.2, openssl-devel, curl-devel, expat-devel,
gettext  %{!?_without_docs:, xmlto, asciidoc > 6.0.3}
So does a built RPM inherit that as a requirement? Just curious, since
I haven't touched RPMs for the better part of a decade.


Dave.

Re: [PATCH 3/3] The "curl" executable is no longer required

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:44:46

"David Symonds" [off-list ref] writes:
On Sun, Jun 15, 2008 at 8:16 PM, Johan Herland [off-list ref] wrote:
quoted
diff --git a/git.spec.in b/git.spec.in
index 97a26be..d946bb1 100644
--- a/git.spec.in
+++ b/git.spec.in
@@ -12,7 +12,7 @@ BuildRequires:        zlib-devel >= 1.2, openssl-devel,
curl-devel, expat-devel, gettex
 BuildRoot:     %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

 Requires:      perl-Git = %{version}-%{release}
-Requires:      zlib >= 1.2, rsync, curl, less, openssh-clients, expat
+Requires:      zlib >= 1.2, rsync, less, openssh-clients, expat
 Provides:      git-core = %{version}-%{release}
 Obsoletes:     git-core <= 1.5.4.2
 Obsoletes:     git-p4
Shouldn't libcurl still be listed as a requirement? Or is it
statically linked?
It is not necessary to enumerate simple library dependencies, as
rpmbuild _detects_ those dependencies during building binary RPMS.
Only unusual requirements (on programs (tools) or on specific version
of library) are needed to be added in Requires header.

This has nothing to do with BuildRequires.  Besides it worked without
libcurl in Requires, so it should continue to work without it,
isn't it?

-- 
Jakub Narebski
Poland
ShadeHawk on #git

Re: [PATCH 3/3] The "curl" executable is no longer required

From: Johan Herland <hidden>
Date: 2016-06-15 22:44:46

On Sunday 15 June 2008, Jakub Narebski wrote:
"David Symonds" [off-list ref] writes:
quoted
On Sun, Jun 15, 2008 at 8:16 PM, Johan Herland [off-list ref] 
wrote:
quoted
quoted
diff --git a/git.spec.in b/git.spec.in
index 97a26be..d946bb1 100644
--- a/git.spec.in
+++ b/git.spec.in
@@ -12,7 +12,7 @@ BuildRequires:        zlib-devel >= 1.2,
openssl-devel, curl-devel, expat-devel, gettex
 BuildRoot:    
%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

 Requires:      perl-Git = %{version}-%{release}
-Requires:      zlib >= 1.2, rsync, curl, less, openssh-clients,
expat +Requires:      zlib >= 1.2, rsync, less, openssh-clients,
expat Provides:      git-core = %{version}-%{release}
 Obsoletes:     git-core <= 1.5.4.2
 Obsoletes:     git-p4
Shouldn't libcurl still be listed as a requirement? Or is it
statically linked?
It is not necessary to enumerate simple library dependencies, as
rpmbuild _detects_ those dependencies during building binary RPMS.
Only unusual requirements (on programs (tools) or on specific version
of library) are needed to be added in Requires header.

This has nothing to do with BuildRequires.  Besides it worked without
libcurl in Requires, so it should continue to work without it,
isn't it?
Unfortunately I don't know this format at all. There are now two versions of 
the patch, one without "Requires: curl", and one where it's replaced 
by "Requires: libcurl". Someone with more RPM knowledge will have to 
determine which is right.

...Johan

-- 
Johan Herland, [off-list ref]
www.herland.net
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help