This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Updated (and new) cygport patches


Four different patchsets. They should all apply independently with only minor fuzz. I know you're too busy at the moment, Yaakov (congrats!), to review these patches -- I just wanted to update them to latest cygport CVS so they don't bitrot.

Short summary:
(1) Updated mixed download protocol patch
(2) split out the portion of the relocatable patch that deals
    with packages having postinstall/preremove scripts that "go with"
    packages other than the main.
(3) relocation part of relocatable patch (new: dorelsym script)
(4) autoconf-2.61 support

--
Chuck


=====================================================================


(1) Updated mixed download protocol patch (original here:
    http://cygwin.com/ml/cygwin/2006-11/msg00137.html )
    against CVS latest.

2006-11-28 Charles Wilson <...>
	
	* bin/cygport.in (src_fetch_auto): new function. Autodetects
	protocol of passed-in URI (mirror|http|ftp) and errors if
	no recognized protocol detected
	(src_fetch_auto_warn): new function. Autodetects protocol
	of passed-in URI (mirror|http|ftp) and issues a warning if
	no recognized protocol detected
	(src_fetch): call src_fetch_auto_warn for 2nd..Nth SRC_URI
	regardless of download method (cvs|svn|git|mirror|http|ftp)
	of first SRC_URI.  If !(cvs|svn|git), call src_fetch_auto
	for first SRC_URI -- which will error if first SRC_URI's
	protocol is unrecognized.
	(src_prep_init_hook): new function. no-op.
	(src_prep_fini_hook): new function. no-op.
	(src_prep): call src_prep_init_hook and src_prep_fini_hook.


* lib/cvs.cygclass: extract first name from SRC_URI and use that to generate tarball name. Ensure that working directory is unchanged by a call to cvs_fetch. * lib/svn.cygclass: extract first name from SRC_URI and use that to generate tarball name. Ensure that working directory is unchanged by a call to svn_fetch. * lib/git.cygclass: extract first name from SRC_URI and use that to generate tarball name. Ensure that working directory is unchanged by a call to git_fetch.

=====================================================================

(2) split out the portion of the relocatable patch (original here:
    http://cygwin.com/ml/cygwin/2006-10/msg00743.html ) that deals
    with packages having postinstall/preremove scripts that "go with"
    packages other than the main.  (e.g. gettext has no postinstall,
    but gettext-devel does)

2006-11-28 Charles Wilson <...>

	* bin/prep_gnu_info.sh: allow cygport client to suppress
	automatic install-info (useful if: subpackages each have own
	explicit postinstall scripts, and each subpackage "owns"
	certain info files.  To activate *suppression*, set
	SUPPRESS_AUTOMATIC_INSTALLINFO to non-empty.  Default behavior
	is unchanged from current.
	* bin/cygport.in (__prepetc): allow ${C}/${PN}.postinstall
	and ${C}/${PN}.sh as synonyms for ${C}/postinstall.sh (however,
	presence of more than one of these causes error message).
	Allow ${C}/${PN}.preremove as synonym for ${C}/preremove.sh
	(but presence of both causes error message).  Allow for
	${C}/${pkg_name[${n}]}.postinstall and/or
	${C}/${pkg_name[${n}]}.preremove [n > 1].

=====================================================================

(3) relocation part of relocatable patch (original...see link above)

NEW FILE: bin/prep_relocated_libtool_la.sh
   make sure that .la files don't have references to their
   temporary --prefix.

NEW FILE: lib/relocatable.cygclass
   mainly just "turns on" the relocation support (and "turns off"
   /usr/lib/cygports/bin/<SCRIPTS> that don't have appropriate support.

NEW FILE: bin/dorelsym
   automagically computes relative path between two absolute paths
   and creates a relative symlink.  That is:
       dorelsym ${D}/usr/share/terminfo ${D}/usr/lib/terminfo
   will do
       (cd ${D}/usr/lib && ln -fs ../share/terminfo terminfo)
   This is important when variables appear in the target and symlink
   names, and you don't know the true relative path a priori.

2006-11-28 Charles Wilson <...>

	* bin/Makefile.am: add new files prep_relocated_libtool_la.sh
	and dorelsym
	* bin/prep_relocated_libtool_la.sh: new file
	* lib/Makefile.am: add new file relocatable.cygclass
	* lib/relocatable.cygclass: new file
	* bin/cygport.in (_ENABLE_RELOCATION): new global variable
	(_RELOCDIR): new global variable
	(__init_relocation): new function
	(__check_relocation): new function
	(__maybe_relocate): new function (main hook for relocatation
	support, called by other cygport functions)
	(cygconf): Add support for ${_RELOCDIR} and --enable-relocatable
	(docinto): Add support for ${_RELOCDIR}
	(exeinto): Add support for ${_RELOCDIR}
	(insinto): Add support for ${_RELOCDIR}
	(__prepare_relocation_ins): new function sets up top level of
	${D} to point to ${D}${_RELOCDIR}
	(cyginstall): Add support for ${_RELOCDIR}.  Optionally call
	__prepare_relocation_ins.
	(__prepstrip): Add support for ${_RELOCDIR}. Also if relocation
	is enabled, call prep_relocated_libtool_la.sh
	(pkg_binpkg): add support for ${_RELOCDIR}
	(pkg_pkgcheck): add support for ${_RELOCDIR}
	(finish): don't forget to clean up /tmp/temporary-prefix
	directory (even though we never actually install anything there;
	instead we install into ${D}/tmp/temporary-prefix)

=====================================================================

(4) support for autoconf-2.61

2006-11-28 Charles Wilson <...>

	* bin/cygport.in (cygautoreconf): add extensible support for
	autoconf-2.61, patterned after gentoo autoconf wrapper.
	(cygconf): also supply --datarootdir if ac-2.61.

=====================================================================

Contents of attached tarball:
[1]  cygport-mixedmode.patch
[2]  cygport-multiple-postinstall.patch
[3]  cygport-relocatable.patch
[3]* prep_relocated_libtool_la.sh
[3]* relocatable.cygclass
[3]* dorelsym
[4] cygport-ac2.61.patch

* must be copied into appropriate directory, and 'cvs add'ed.

Attachment: cygport-patchset.tar.gz
Description: GNU Zip compressed data

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]