This is the mail archive of the
cygwin-apps@cygwin.com
mailing list for the Cygwin project.
Re: Setup version in setup.ini
Igor Pechtchanski wrote:
> On Wed, 9 Apr 2003, Max Bowsher wrote:
>
>> Igor Pechtchanski wrote:
>>> On Wed, 9 Apr 2003, Max Bowsher wrote:
>>>
>>>> Christopher Faylor wrote:
>>>>> On Wed, Apr 09, 2003 at 12:50:03PM -0400, Igor Pechtchanski wrote:
>>>>>> Shouldn't setup.ini be updated to reflect the new setup version
>>>>>> available?
>>>>>> See <http://cygwin.com/ml/cygwin/2003-04/msg00813.html>.
>>>>>
>>>>> It's supposed to be automatic. Apparently someone removed the version
>>>>> marker strings in setup.exe that upset relies on for decoding the
>>>>> version. I think this happens in nearly every setup release.
>>>>
>>>> I suspect the markers are intact, but masked by the upx compression.
>>>> Max.
>>>
>>> This is puzzling. There is an option in upx that disables compression
for
>>> resources ("--compress-resouces=0"). Using it does add about 11k to the
>>> size of the executable. However, even with that option, "strings
>>> setup.exe" doesn't show any of the resources... Am I understanding the
>>> intent of the option correctly? If not, what am I missing?
>>
>> The resources are stored in Unicode. Try strings -el.
>
> Yep, got it. Thanks.
>
>> But the version marker isn't a resource anyway.
>> Max.
>
> Should it be? I don't know much about resources, but can we have two .rc
> files, one containing only the version (i.e., instead of setup_version.c
> generate a setup_version.rc)? Alternatively, I know the Windows EXE
> header has a slot for an application-defined version... If upx keeps that
> intact, we could look into that approach.
Unfortunately, most of the current resources *should* be compressed.
And our versions can be arbitrary length strings, so the EXE header is
unlikely to be sufficient.
> Igor
> P.S. How did it work before? upx has been used for a while now, hasn't
it?
I suspect it *didn't* work for a while now.
Perhaps we should go for the low-tech approach: Just have a file on
sources.r.c that gets manually updated at each release.
Max.