Mailing-List: contact cygwin-apps-help AT cygwin DOT com; run by ezmlm Sender: cygwin-apps-owner AT cygwin DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Mail-Followup-To: cygwin-apps AT cygwin DOT com Delivered-To: mailing list cygwin-apps AT cygwin DOT com Message-ID: <3CE1EE6A.4050607@ece.gatech.edu> Date: Wed, 15 May 2002 01:13:14 -0400 From: Charles Wilson User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.4) Gecko/20011019 Netscape6/6.2 X-Accept-Language: en-us MIME-Version: 1.0 To: cygwin-apps AT cygwin DOT com Subject: Re: upset now understands 'external-source' option References: <20020515033102 DOT GA8017 AT redhat DOT com> Content-Type: multipart/mixed; boundary="------------070106090805040905070002" This is a multi-part message in MIME format. --------------070106090805040905070002 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Christopher Faylor wrote: > I've added the previously mentioned external-source option to > upset, so this is now valid in setup.hint (but not setup.ini). > > @ libbz2 > sdesc: "shared libraries for bzip2 (runtime)" > ldesc: "bzip2 is a freely available, patent free, high-quality data > compressor. It typically compresses files to within 10% to 15% of the best > available techniques (the PPM family of statistical compressors), whilst being > around twice as fast at compression and six times faster at decompression." > category: Libs > requires: cygwin bzip2 > external-source: bzip2 > > Anyone want to submit the corresponding web page change? How's this: --Chuck --------------070106090805040905070002 Content-Type: text/plain; name="external-source.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="external-source.diff" Index: setup.html =================================================================== RCS file: /cvs/cygwin/htdocs/setup.html,v retrieving revision 1.78 diff -u -r1.78 setup.html --- setup.html 5 May 2002 21:02:08 -0000 1.78 +++ setup.html 15 May 2002 05:12:15 -0000 @@ -56,9 +56,13 @@ should contain the source files needed to rebuild the package. While installing these files is optional under setup.exe, the inclusion of a source tar file is part of the totality that makes up a cygwin package -and so, these files are not optional. See the not optional. In some cases, there +may be multiple packages generated from the same source; for instance, +one might have a "boffo" package and its associate shared library in +"libboffo7", where both are generated from the same -src tarball. See the making packages section below for more -details on the contents of a -src tar file..

+details on the contents of a -src tar file, and the setup.hint +section for information on the "external-source:" option.

The setup.hint file is discussed below. @@ -153,6 +157,7 @@ test: version category: name1[ name2...] requires: package[ package...] +external-source: package

(You may see some older setup.hint files which lack the colons after @@ -357,6 +362,90 @@

Notice that we didn't use the prev, curr, test, or @ options. Instead, we relied on the automatic setup.ini generator to do as much as possible for us.

+ +

setup.hint (Advanced Options)

+ + +

The external-source line is used when multiple installation +packages are generated from a single -src package. For example, suppose +the boffo package contains the executables and documentation for +boffo, but there is also a shared library cygboffo-7.dll that +might be used by other packages; say, the fobbo program. It +would be nice to separate that cygboffo-7.dll shared library +into a second installation package, so that users of the fobbo +program can install just the library, and not the entire +boffo package. However, all of the boffo executables +and the DLL are generated from the same source. To support this usage, +the boffo maintainer would create three packages:

+ +
    +
  • boffo-2.4.1-2.tar.bz2: an installable package that contains +all of the normal contents of boffo -- except for the shared library. +
  • libboffo7-2.4.1-2.tar.bz2: an installable package that contains +only the shared library from boffo +
  • boffo-2.4.1-2-src.tar.bz2: the -src tarball for boffo. +
+ +

boffo-2.4.1-2.tar.bz2, boffo-2.4.1-2-src.tar.bz2, +and the boffo setup.hint +would go into the release/boffo/ subdirectory on the cygwin +server. libboffo7-2.4.1-2.tar.bz2 would go into a separate +subdirectory, such as release/boffo/libboffo7/, along with +a separate libboffo7 setup.hint. The two setup.hint +files would look something like this:

+ +
+ + + + + + + + + +
boffo setup.hint
libboffo7 setup.hint
+category: Games Text
+requires: libboffo7 libncurses6 cygwin
+sdesc: "A whackamole simulation in ASCII art"
+ldesc: "A whackamole simulation in ASCII art. +Intended for use on VT100 terminals at BAUD rates 1200 and +above. Uses arrow keys for positioning over moles. Space +bar whacks the mole.

+No actual moles will be harmed during execution of this game."
+
+category: Games Text
+requires: cygwin
+external-source: boffo
+sdesc: "Runtime library for a whackamole simulation in ASCII art"
+ldesc: "A whackamole simulation in ASCII art. +Intended for use on VT100 terminals at BAUD rates 1200 and +above. Uses arrow keys for positioning over moles. Space +bar whacks the mole.

+No actual moles will be harmed during execution of this game."
+
+
+ +

The setup.ini generated from these setup.hint files will include these lines +(only relevant lines shown):

+

+@ boffo
+requires: libboffo7 libncurses6 cygwin
+version: 2.4.1-2
+install: release/boffo/boffo-2.4.1-2.tar.bz2
+source: release/boffo/boffo-2.4.1-2-src.tar.bz2
+
+@ libboffo7
+requires: cygwin
+version: 2.4.1-2
+install: release/boffo/libboffo7/libboffo7-2.4.1-2.tar.bz2
+source: release/boffo/boffo-2.4.1-2-src.tar.bz2
+
+
+ +

Note that both packages point to the same -src tarball. Also, it is required +that the version strings match (libboffo7-5.2 won't point to boffo-1.4-src). The +same logic is used to "match up" prev: and test: versions.

Making Packages

The files paths within both the -src and the binary package files are --------------070106090805040905070002--