Mail Archives: cygwin/2001/11/09/11:16:40
On Fri, Nov 09, 2001 at 10:13:41AM -0500, Brian Keener wrote:
>John P. Rouillard wrote:
>> Yes. I think you must ALWAYS have a keep or skip option available.
>>
>The change definitely makes sense and was in the code at one point in time.
>During the heavy rewrites in choose.cc and the new way the structures and the
>TRUSTS are handled this got lost. Like I said - I had started a change but the
>installed version is in a different part of the structure from Prev, Curr, Test
>Versions and it makes this logic difficult (for me).
>
>I believe the structure needs an entry for Installed - just like it has one for
>Prev, curr, and test
Here's the structure. Notice anything?
typedef struct
{
char *name; /* package name, like "cygwin" */
char *sdesc; /* short description (replaces "name" if provided) */
char *ldesc; /* long description (multi-line) */
Category *category; /* the categories the package belongs to */
Dependency *required; /* the packages required for this package to work */
actions action; /* A range of states applicable to this package */
trusts trust; /* Selects among info[] below, a subset of action */
int srcpicked; /* True if source is required */
Info *installed; /* Info on installed package */
trusts installed_ix; /* Index into info array for currently installed package */
excludes exclude; /* true if this package should be excluded */
/* The reason for this weird layout is to allow for loops that scan either
the info array, based on trust value or the infoscan array based on a pointer,
looking for a particular version. */
Info info[1]; /* First element. Intentionally allocated prior
to infoscan */
Info infoscan[NTRUST - 1]; /* +1 for TRUST_UNKNOWN */
Info infoend[0]; /* end marker */
} Package;
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -