git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
@ 2005-07-23  7:37 Ryan Anderson
  2005-07-23  9:11 ` Junio C Hamano
  2005-07-23 16:24 ` Linus Torvalds
  0 siblings, 2 replies; 9+ messages in thread
From: Ryan Anderson @ 2005-07-23  7:37 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: git, Junio C Hamano, Sebastian Kuzminsky


This patch includes two fixes to the git-core Debian package:

    * Conflict with the GNU Interactive Tools package, which _also_
      wants to install /usr/bin/git.

    * Compile against the unencumbered Mozilla SHA1 code, instead of
      the iffy OpenSSL code.  This makes it easier to get the package
      included for distribution with Debian.

Note: Assumes that Ryan Anderson's patch "Deb packages should include
the binaries" has been applied.

(Note - I fixed up the conflicts against my earlier packaging fixes -- Ryan)

Signed-off-by: Sebastian Kuzminsky <seb@highlab.com>
Signed-off-by: Ryan Anderson <ryan@michonline.com>
---

 debian/changelog |   11 +++++++++++
 debian/control   |    3 ++-
 debian/rules     |   14 ++++++++++++++
 3 files changed, 27 insertions(+), 1 deletions(-)

c651cdc175712c26d4b9c8b75b44a89eb1b74752
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+git-core (0.99.1-1) unstable; urgency=low
+
+  * Conflict with the GNU Interactive Tools package, which also installs
+    /usr/bin/git.
+  * Dont compile against the OpenSSL SHA1 code, it's problematically
+    licensed.  Instead use the PPC assembly on PPC, and the code ripped
+    from Mozilla everywhere else.
+  * Minor tweaks to the Build-Depends.
+
+ -- Sebastian Kuzminsky <seb@highlab.com>  Thu, 21 Jul 2005 01:28:35 -0600
+
 git-core (0.99-1) unstable; urgency=low
 
   * Update deb package support to build correctly. 
diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -7,7 +7,8 @@ Standards-Version: 3.6.1
 
 Package: git-core
 Architecture: any
-Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
+Depends: ${misc:Depends}, patch, diff, rsync, rcs, wget, rsh-client
+Conflicts: git
 Description: The git content addressable filesystem
  GIT comes in two layers. The bottom layer is merely an extremely fast
  and flexible filesystem-based database designed to store directory trees
diff --git a/debian/rules b/debian/rules
--- a/debian/rules
+++ b/debian/rules
@@ -12,6 +12,20 @@ else
 endif
 export CFLAGS
 
+#
+# On PowerPC we compile against the hand-crafted assembly, on all
+# other architectures we compile against GPL'ed sha1 code lifted
+# from Mozilla.  OpenSSL is strangely licensed and best avoided
+# in Debian.
+#
+HOST_ARCH=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+ifeq (${HOST_ARCH},powerpc)
+	export PPC_SHA1=YesPlease
+else
+	export MOZILLA_SHA1=YesPlease
+endif
+
+
 PREFIX := /usr
 MANDIR := /usr/share/man/
 
-- 

Ryan Anderson
  sometimes Pug Majere

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
  2005-07-23  7:37 [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git" Ryan Anderson
@ 2005-07-23  9:11 ` Junio C Hamano
  2005-07-23 14:39   ` Ryan Anderson
  2005-07-23 16:24 ` Linus Torvalds
  1 sibling, 1 reply; 9+ messages in thread
From: Junio C Hamano @ 2005-07-23  9:11 UTC (permalink / raw)
  To: Ryan Anderson; +Cc: git, Sebastian Kuzminsky

Ryan Anderson <ryan@michonline.com> writes:

> --- a/debian/changelog
> +++ b/debian/changelog
> ...
> +  * Minor tweaks to the Build-Depends.

This is a nit and not the reason for NACK, but I do not see any
change to Build-Depends.

> -Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
> +Depends: ${misc:Depends}, patch, diff, rsync, rcs, wget, rsh-client

This is primarily my fault, but this new Depends line is already
obsolete.  Darrin Thompson removed the last remaining use of
wget and it is my understanding that we do not depend on wget
anymore; instead we now depend on curl executable.

I do not offhand remember where we use rsh-client.  The
rsh-client I know of is this one, which claims to offer rsh, rcp
and rlogin but I do not think we use any of them.  Did you mean
"ssh" package?

    Package: rsh-client
    Priority: extra
    Section: net
    Maintainer: Alberto Gonzalez Iniesta <agi@inittab.org>
    Source: netkit-rsh
    Version: 0.17-13
    Description: rsh clients.
     This package contains rsh, rcp and rlogin.

Perhaps (I am not sure about the rsh-client vs ssh):

> +Depends: ${misc:Depends}, patch, diff, rsync, rcs, curl, ssh

Both the use of mozilla SHA1 library and conflicting with the
other GIT, which are the primary points of this patch, sound
sensible, relative to the Debian poli(cies|tics), but as long as
we are touching the Depends: line, let's make sure we get it
right (the current one is obviously obsolete).

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
  2005-07-23  9:11 ` Junio C Hamano
@ 2005-07-23 14:39   ` Ryan Anderson
  0 siblings, 0 replies; 9+ messages in thread
From: Ryan Anderson @ 2005-07-23 14:39 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Ryan Anderson, git, Sebastian Kuzminsky

On Sat, Jul 23, 2005 at 02:11:16AM -0700, Junio C Hamano wrote:
> Ryan Anderson <ryan@michonline.com> writes:
> 
> > --- a/debian/changelog
> > +++ b/debian/changelog
> > ...
> > +  * Minor tweaks to the Build-Depends.
> 
> This is a nit and not the reason for NACK, but I do not see any
> change to Build-Depends.
> 
> > -Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
> > +Depends: ${misc:Depends}, patch, diff, rsync, rcs, wget, rsh-client

Just to be clear - I was forwarding Sebastian's patch on, after fixing
up the conflict I got applying it, so I didn't edit the comments, other
than to add my Signed-off-by line.
 
> This is primarily my fault, but this new Depends line is already
> obsolete.  Darrin Thompson removed the last remaining use of
> wget and it is my understanding that we do not depend on wget
> anymore; instead we now depend on curl executable.
> 
> I do not offhand remember where we use rsh-client.  The
> rsh-client I know of is this one, which claims to offer rsh, rcp
> and rlogin but I do not think we use any of them.  Did you mean
> "ssh" package?

ssh Provides rsh-client.

I suspect that was the thinking.  I think the way we use ssh should be
compatible with rsh, and that was the underlying reason for doing it
this way.

> Both the use of mozilla SHA1 library and conflicting with the
> other GIT, which are the primary points of this patch, sound
> sensible, relative to the Debian poli(cies|tics), but as long as
> we are touching the Depends: line, let's make sure we get it
> right (the current one is obviously obsolete).

I have no issue with the hunk being dropped or just doing a followup to
fix things up.  I'll wait until Linus settles back in and our massive
backlog is fully committed or commented on.

-- 

Ryan Anderson
  sometimes Pug Majere

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
  2005-07-23  7:37 [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git" Ryan Anderson
  2005-07-23  9:11 ` Junio C Hamano
@ 2005-07-23 16:24 ` Linus Torvalds
  2005-07-23 19:23   ` Ryan Anderson
  1 sibling, 1 reply; 9+ messages in thread
From: Linus Torvalds @ 2005-07-23 16:24 UTC (permalink / raw)
  To: Ryan Anderson; +Cc: git, Junio C Hamano, Sebastian Kuzminsky



On Sat, 23 Jul 2005, Ryan Anderson wrote:
> 
>     * Compile against the unencumbered Mozilla SHA1 code, instead of
>       the iffy OpenSSL code.  This makes it easier to get the package
>       included for distribution with Debian.

Note that this is just not true.

We still use openssl for the bignum stuff in epoch.c, so using the mozilla
SHA1 libraries just doesn't make any difference at all from an openssl 
standpoint. You'd have to disable the "--merge-order" flag entirely to get 
rid of the openssl dependency, methinks.

		Linus

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
  2005-07-23 16:24 ` Linus Torvalds
@ 2005-07-23 19:23   ` Ryan Anderson
  2005-07-23 19:26     ` Ryan Anderson
  0 siblings, 1 reply; 9+ messages in thread
From: Ryan Anderson @ 2005-07-23 19:23 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Ryan Anderson, git, Junio C Hamano, Sebastian Kuzminsky

On Sat, Jul 23, 2005 at 09:24:33AM -0700, Linus Torvalds wrote:
> 
> 
> On Sat, 23 Jul 2005, Ryan Anderson wrote:
> > 
> >     * Compile against the unencumbered Mozilla SHA1 code, instead of
> >       the iffy OpenSSL code.  This makes it easier to get the package
> >       included for distribution with Debian.
> 
> Note that this is just not true.
> 
> We still use openssl for the bignum stuff in epoch.c, so using the mozilla
> SHA1 libraries just doesn't make any difference at all from an openssl 
> standpoint. You'd have to disable the "--merge-order" flag entirely to get 
> rid of the openssl dependency, methinks.

I think that's going a bit far for the purpose of this packaging.

I reworked the comments in the changelog to make it clear that the
elimination of OpenSSL is not complete, and also address the comments
Junio made.

I'll reply to this email with that updated patch, but I've got this and
all the other pending Debian packaging fixes in
rsync://h4x0r5.com/git-ryan.git/

-- 

Ryan Anderson
  sometimes Pug Majere

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
  2005-07-23 19:23   ` Ryan Anderson
@ 2005-07-23 19:26     ` Ryan Anderson
  2005-07-24  3:28       ` Alexey Nezhdanov
  0 siblings, 1 reply; 9+ messages in thread
From: Ryan Anderson @ 2005-07-23 19:26 UTC (permalink / raw)
  To: Ryan Anderson; +Cc: Linus Torvalds, git, Junio C Hamano, Sebastian Kuzminsky

This patch includes two fixes to the git-core Debian package:

    * Conflict with the GNU Interactive Tools package, which _also_
      wants to install /usr/bin/git.

    * Compile against the unencumbered Mozilla SHA1 code, instead of
      the iffy OpenSSL code, as much as possible.  This makes it easier to get
      the package included for distribution with Debian.

This has been based upon the original patch by Sebastian Kuzminsky
<seb@highlab.com>, but has been fixed up based upon feedback.

Signed-off-by: Ryan Anderson <ryan@michonline.com>
---

 changelog |   10 ++++++++++
 control   |    3 ++-
 rules     |   14 ++++++++++++++
 3 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,13 @@
+git-core (0.99-2) unstable; urgency=low
+
+  * Conflict with the GNU Interactive Tools package, which also installs
+    /usr/bin/git.
+  * Use the Mozilla SHA1 code and/or the PPC assembly in preference to
+    OpenSSL.  This is only a partial fix for the license issues with OpenSSL.
+  * Minor tweaks to the Depends.
+
+ -- Ryan Anderson <ryan@michonline.com>  Sat, 23 Jul 2005 14:15:00 -0400
+
 git-core (0.99-1) unstable; urgency=low
 
   * Update deb package support to build correctly. 
diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -7,7 +7,8 @@ Standards-Version: 3.6.1
 
 Package: git-core
 Architecture: any
-Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
+Depends: ${misc:Depends}, patch, diff, rsync, rcs, ssh
+Conflicts: git
 Description: The git content addressable filesystem
  GIT comes in two layers. The bottom layer is merely an extremely fast
  and flexible filesystem-based database designed to store directory trees
diff --git a/debian/rules b/debian/rules
--- a/debian/rules
+++ b/debian/rules
@@ -12,6 +12,20 @@ else
 endif
 export CFLAGS
 
+#
+# On PowerPC we compile against the hand-crafted assembly, on all
+# other architectures we compile against GPL'ed sha1 code lifted
+# from Mozilla.  OpenSSL is strangely licensed and best avoided
+# in Debian.
+#
+HOST_ARCH=$(shell dpkg-architecture -qDEB_HOST_ARCH)
+ifeq (${HOST_ARCH},powerpc)
+	export PPC_SHA1=YesPlease
+else
+	export MOZILLA_SHA1=YesPlease
+endif
+
+
 PREFIX := /usr
 MANDIR := /usr/share/man/
 

-- 

Ryan Anderson
  sometimes Pug Majere

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
  2005-07-23 19:26     ` Ryan Anderson
@ 2005-07-24  3:28       ` Alexey Nezhdanov
  2005-07-24  6:12         ` Junio C Hamano
  0 siblings, 1 reply; 9+ messages in thread
From: Alexey Nezhdanov @ 2005-07-24  3:28 UTC (permalink / raw)
  To: git

Satturday, 23 July 2005 23:26 Ryan Anderson wrote:
> -Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
> +Depends: ${misc:Depends}, patch, diff, rsync, rcs, ssh
Did I missed something or you forgot about libcurl3 dependency?

-- 
Respectfully
Alexey Nezhdanov

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
  2005-07-24  3:28       ` Alexey Nezhdanov
@ 2005-07-24  6:12         ` Junio C Hamano
  2005-07-25  4:27           ` Ryan Anderson
  0 siblings, 1 reply; 9+ messages in thread
From: Junio C Hamano @ 2005-07-24  6:12 UTC (permalink / raw)
  To: Alexey Nezhdanov; +Cc: Ryan Anderson, git

Alexey Nezhdanov <snake@penza-gsm.ru> writes:

> Satturday, 23 July 2005 23:26 Ryan Anderson wrote:
>> -Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
>> +Depends: ${misc:Depends}, patch, diff, rsync, rcs, ssh
> Did I missed something or you forgot about libcurl3 dependency?

I think you are right.  In the build process, dh_shlibdeps is
used and shlib:Depends is created to include the libcurl3 (among
other things) in debian/git-core.substvars, but it is not
actually used in the resulting binary package because the line
misses ${shlibs:Depends} there.

Ryan, would this change be enough?  I do not know what I am
doing (${misc:Depends} is new to me), but this patch seems to
fix it on my box.

------------
Make sure binary debian package depends on shlibs it uses.

The "Depends:" line in debian/control lacked ${shlibs:Depends},
which caused the resulting binary package not to depend on
libcurl3 nor even libc6 ;-).

Signed-off-by: Junio C Hamano <junkio@cox.net>
---

# - linus: Fix up applymbox script for the addition of "git-" prefix
# + (working tree)
diff --git a/debian/control b/debian/control
--- a/debian/control
+++ b/debian/control
@@ -7,7 +7,7 @@ Standards-Version: 3.6.1
 
 Package: git-core
 Architecture: any
-Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
+Depends: ${shlibs:Depends} ${misc:Depends}, shellutils, diff, rsync, rcs
 Description: The git content addressable filesystem
  GIT comes in two layers. The bottom layer is merely an extremely fast
  and flexible filesystem-based database designed to store directory trees

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git"
  2005-07-24  6:12         ` Junio C Hamano
@ 2005-07-25  4:27           ` Ryan Anderson
  0 siblings, 0 replies; 9+ messages in thread
From: Ryan Anderson @ 2005-07-25  4:27 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Alexey Nezhdanov, git

On Sat, Jul 23, 2005 at 11:12:22PM -0700, Junio C Hamano wrote:
> Alexey Nezhdanov <snake@penza-gsm.ru> writes:
> 
> > Satturday, 23 July 2005 23:26 Ryan Anderson wrote:
> >> -Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
> >> +Depends: ${misc:Depends}, patch, diff, rsync, rcs, ssh
> > Did I missed something or you forgot about libcurl3 dependency?
> 
> I think you are right.  In the build process, dh_shlibdeps is
> used and shlib:Depends is created to include the libcurl3 (among
> other things) in debian/git-core.substvars, but it is not
> actually used in the resulting binary package because the line
> misses ${shlibs:Depends} there.
> 
> Ryan, would this change be enough?  I do not know what I am
> doing (${misc:Depends} is new to me), but this patch seems to
> fix it on my box.

Yes - this looks like the right idea - but you're missing a comma
between the two variables.  (That will cause the *entire* depends line
to get dropped, btw.)

I changed it from shlibs:Depends to misc:Depends because I saw something
when I was tracking down exactly what I needed to put into debian/compat
(in fact, man debhelper, then search for "compat" and look under V4),
but I misread "supplements" to be something else. 

So, Acked-By: me, if you put the comma in. :)



> ------------
> Make sure binary debian package depends on shlibs it uses.
> 
> The "Depends:" line in debian/control lacked ${shlibs:Depends},
> which caused the resulting binary package not to depend on
> libcurl3 nor even libc6 ;-).
> 
> Signed-off-by: Junio C Hamano <junkio@cox.net>
> ---
> 
> # - linus: Fix up applymbox script for the addition of "git-" prefix
> # + (working tree)
> diff --git a/debian/control b/debian/control
> --- a/debian/control
> +++ b/debian/control
> @@ -7,7 +7,7 @@ Standards-Version: 3.6.1
>  
>  Package: git-core
>  Architecture: any
> -Depends: ${misc:Depends}, shellutils, diff, rsync, rcs
> +Depends: ${shlibs:Depends} ${misc:Depends}, shellutils, diff, rsync, rcs
>  Description: The git content addressable filesystem
>   GIT comes in two layers. The bottom layer is merely an extremely fast
>   and flexible filesystem-based database designed to store directory trees
> 
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

-- 

Ryan Anderson
  sometimes Pug Majere

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2005-07-25  4:27 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-07-23  7:37 [PATCH] Deb Packaging fixes: Build against Mozilla libs for Debian, conflict with "git" Ryan Anderson
2005-07-23  9:11 ` Junio C Hamano
2005-07-23 14:39   ` Ryan Anderson
2005-07-23 16:24 ` Linus Torvalds
2005-07-23 19:23   ` Ryan Anderson
2005-07-23 19:26     ` Ryan Anderson
2005-07-24  3:28       ` Alexey Nezhdanov
2005-07-24  6:12         ` Junio C Hamano
2005-07-25  4:27           ` Ryan Anderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).