Web lists-archives.com

Re: Setup-x86(_64) (v2.889) ... just a question

On 2018-03-06 16:38, Jon Turney wrote:
On 06/03/2018 13:39, Houder wrote:
[...]> However to my surprise /etc/setup/installed.db now lists:

64-@@ grep -e cscope -e lz4 /drv/e/Cygwin64-test/etc/setup/installed.db
cscope cscope-15.8a-2.tar.bz2 1 <==== artifical version number
liblz4_1 liblz4_1-1.7.5-0.tar.bz2 0 <==== ditto

These files do NOT exist. The file names were "artificially crafted".

The files that do exist, are:

64-@@ ls -l release/cscope release/lz4/liblz4_1
total 700
-rw-r--r-- 1 Henri None 381409 Mar  6 13:18 cscope-
-rw-r--r-- 1 Henri None 330264 Mar  6 13:16 cscope-15.8b-1.tar.xz

total 52
-rw-r--r-- 1 Henri None 30408 Mar  6 12:37 liblz4_1-1.7.5-1.tar.xz
-rw-r--r-- 1 Henri None 17924 Mar  6 11:15 liblz4_1-131-1.tar.xz

Is this the future of setup? Meaning, is it the intention that it may
be possible that installed.db refers to files that do not exist?

Not only the future, but the present and past, as well.

Despite appearances, these aren't filenames, but versions encoded in
peculiar way, for backwards compatibility.  See [1].

[1] https://cygwin.com/ml/cygwin/2018-02/msg00037.html

package_db.cc (package::flush() ):

     In INSTALLED.DB 3, lines are: 'packagename version flags', where
     version is encoded in a notional filename for backwards
     compatibility, and the only currently defined flag is user-picked
     (bit 0).

Got it. Thank you. Made a note of this for myself.


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