Mail Archives: cygwin-developers/2001/09/19/22:58:10
I've checked in a new 'temp' directory in the sources.redhat.com
repository. It contains the tools I used to create a populated
setup.ini.
"rh" is a perl script. If you say "rh -d setup.ini.base > setup.ini"
it will create a setup.ini that is loosely based on debian categories
and descriptions. setup.ini.base is any setup.ini created by DJ's
update-setup script. I've recently posted a pointer to this script.
Without the "-d" the rh output is based on Red Hat's rpms. You do need
to have all of the packages on your system that are in the cygwin
release to use this, though.
setup.ini.base is the current setup.ini.
setup.ini.rpm is the rpm version of setup.ini with dependencies,
categories, and descriptions.
setup.ini is the debian version.
I think I like the debian categories better. I probably like
the Red Hat descriptions and dependencies better. There are
a LOT of overrides in the rh script where I did attempt to
choose the best of both worlds. The overrides also attempt to
catch all of the changes from the last time you all gave me
input on this. I'm sure I probably missed some things, though,
so please check the setup.ini file carefully.
I expect that this directory will eventually go away. In the meantime
please use it to update your packages as you see fit. You can either
change the 'rh' file as appropriate or the setup.ini file. I'd prefer
the 'rh' file since I can use that to operate on any future setup.ini
file but if you don't know perl then changing the setup.ini file is ok.
The generated setup.ini file currently causes setup.exe to SEGV.
It seems to get about as far as calling add_required for the ncurses
package and then it starts recursively calling insert_pkg, for some
reason. It would be great if someone could debug this.
I'm also open to other category names. You can see the ones that
I/Debian used in setup.ini.
As I was setting up the category names I could hear the cygwin mailing
list voices asking "Why is gawk in the base category!!!??? I don't like
gawk! It sounds like someone is vomiting!" I'm wondering if our category
method will immediately prove that we really need something as
sophisticated as rpm or apt.
I was also wondering if we wanted to have a minimal category, too, which
only included bash, cygwin, ash, and...???
And, another thing that I thought would be neat would be for there to be
some way for users to specify their own categories so that a "Bob"
category could contain "cygwin, bash, and libtiff" but nothing else.
Finally, while trying to build this, I noticed that the build died
in concat.cc due to (apparently) some changes to mingw's stdarg.h
file. My gcc 3.0.1 complained about the fact that you can't do
arithmetic on void pointers -- I couldn't see any void pointers
there, but I worked around this problem with the below kludge.
Just in case someone else runs into the same thing.
If you think you have a good idea but you don't wipe out a previous
version of a setup.ini or rh file, feel free to add a new file to
this directory for everyone's amazement and delight. As I said,
I'll probably delete this directory eventually anyway.
cgf
Index: stdarg.h
===================================================================
RCS file: /cvs/uberbaum/winsup/mingw/include/stdarg.h,v
retrieving revision 1.2
diff -p -r1.2 stdarg.h
*** stdarg.h 2001/08/29 13:43:59 1.2
--- stdarg.h 2001/09/20 02:52:16
***************
*** 32,37 ****
--- 32,40 ----
*
*/
+ #if defined __GNUC__ && __GNUC__ >= 3
+ #include_next <stdarg.h>
+ #else
#ifndef _STDARG_H_
#define _STDARG_H_
*************** typedef char* va_list;
*** 108,112 ****
--- 111,116 ----
*((t*) (void*) ((ap) - __va_argsiz(t))))
#endif /* Not RC_INVOKED */
+ #endif
#endif /* not _STDARG_H_ */
- Raw text -