Mail Archives: cygwin-developers/2001/05/14/13:19:37
Brian Keener wrote:
>
> Earnie Boyd wrote:
> > Huh!? What do you mean by the "top of the develop tree"? By going to
> > the top of the build directory (remember you're not supposed to be
> > building in the source directory) and doing `make clean' worked for me.
>
> Hum,
>
> I have a /usr/develop and within /usr/develop I have inst/, obj/ and
> src/. All my source from cvs is under the src/ directory which includes
> etc/, include/, docbook-tools/, libiberty/, newlib/, and winsup/. My
> original configure and make were performed in obj/ (ie /usr/develop/obj)
> which resulted in 3 subdirectories: etc/, libiberty/, and
> i686-pc-cygwin/. I am using a script that Trevor Forbes provided that
> was originally based on one that Chris had provided (I was told). At any
> rate as part of this script after it performs a cd to /usr/develop/obj,
> it does a make clean. Then it does the make.
>
> After Chris' response I went back and looked at the
> /usr/develop/obj/i686-pc-cygwin/winsup/cygwin directory and it had a lot
> of old object files. So I cd'd into that directory and did a make clean
> and then went back and did my make and sure enough I got a clean build.
>
> By this I am assuming that from (what I call the top of the development
> tree) /usr/develop/obj a make clean does not recurse through all the
> subdirectories (ie winsup/cygwin, winsup/cinstall) as I have had
> problems with this in the past. It may be a bad assumption but the
> evidence sort of pointed that way. Could it be the fact it is running in
> a script.
>
> Bk
>
> Here is the script - in case someone sees something here that I am doing
> wrong to cause this
>
> #!/bin/sh -x
> #eg my dir structure is
> #/e/src/cygwin/ == $cyg
> #/e/src/cygwin/obj/....
> #/e/src/cygwin/inst/....
> #/e/src/cygwin/src/winsup/.....
> #
> #The first time you use the script, it should build the whole tree, after
> #which, it should only build setup.
> #
> #tested on win2k, gcc version gcc-2.95.2-9 2nd edition and cygwin-1.1.8
> #
> #Note, this is just a modified "Chris build script" and has been posted
> #before..
> #
> #Hope it helps
> #
> #Regards Trevor
> #
>
> #export cyg=/e/src/cygwin
> export cyg=/usr/develop
> export instdir=$cyg/inst
> export srcdir=$cyg/src
> export objdir=$cyg/obj
> export CC_FOR_TARGET=/usr/bin/gcc
> export CXX_FOR_TARGET=/usr/bin/c++
>
> #cd $srcdir/winsup
> #cvs update
>
> if [ ! -d "$objdir" ]; then
> mkdir -p "$objdir"
> fi
>
> cd $objdir
>
> $srcdir/configure --enable-debugging --host=i686-pc-cygwin \
> --target=i686-pc-cygwin --enable-haifa --prefix=/usr \
> --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib \
> --includedir=/nonexistent/include
>
> cd $objdir
> # remove for cinstall build only
> #cd $objdir/i686-pc-cygwin/winsup/cinstall
>
> make clean
>
> make CFLAGS="-g -O2" CXXFLAGS="-g -O2" CCFLAGS="-g -O2" tooldir=/usr
>
> if [ ! -d "$instdir" ]; then
> mkdir -p "$instdir"
> fi
>
> make install prefix=$instdir/usr exec_prefix=$instdir/usr \
> bindir=$instdir/usr/bin libdir=$instdir/usr/lib \
> sysconfdir=$instdir/etc includedir=$instdir/usr/include \
> tooldir=$instdir/usr
Ok. So did *YOU* do the `make clean' from /usr/develop/obj or are you
assuming the `make clean' in the script above did the clean? If the
latter the script is only executing the clean in the
i686-pc-cygwin/winsup/cinstall directory which is not in the top build
directory! If the former I don't understand why it would work for me
and not you.
Earnie.
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com
- Raw text -