Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: <009d01c0c12d$48ae3780$7032273f@ca.boeing.com> From: "Michael A. Chase" To: References: <3AD1A64D DOT 7DC36DF0 AT mip DOT sdu DOT dk> <012a01c0c0f1$baf65110$0200a8c0 AT lifelesswks> <20010409105409 DOT B29382 AT redhat DOT com> Subject: Re: contribution soapbox(was Re: G++ guru's please comment - Re: FW: pthread_create problem in Cygwin 1.1.8-2]) Date: Mon, 9 Apr 2001 12:35:59 -0700 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0066_01C0C0F1.A1681C60" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 ------=_NextPart_000_0066_01C0C0F1.A1681C60 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Maybe the attached file will help some who don't work in the /src tree very often. I source the file at the start of a bash session and then use the cb_* functions to do the work. cb_tail lets me monitor progress in another window. The functions assume that all the necessary directories (.../src, .../obj, .../log, .../install) already exist. I didn't create the functions until after I had already downloaded my first copy of the source tree, so I'm not sure if cb_login() works. -- Mac :}) Give a hobbit a fish and he'll eat fish for a day. Give a hobbit a ring and he'll eat fish for an age. ----- Original Message ----- From: "Christopher Faylor" To: Sent: Monday, April 09, 2001 7:54 AM Subject: Re: contribution soapbox(was Re: G++ guru's please comment - Re: FW: pthread_create problem in Cygwin 1.1.8-2]) > You are right that this all should be fairly easy. What seems to be a big > obstacle for people who are building Cygwin for the first time is the whole > issue of setting up a build environment. > > What I usually see is that people download only the cygwin sources and then > discover that they need more than that. Or, that they try to build cygwin > without configuring first or that they configure in the same directory as > the sources. > > In short, it seems like many people who take the plunge are very new to the > wonderful world of GNU programming. These are issues that anyone who builds > any of the GNU development tools on any platform has to stumble over but > somehow the obstacles seem to be bigger for Cygwin. Possibly because the step to Cygwin user is so low the additional step to Cygwin compiler seems much higher. The only surprise for me was building in a separate tree from the source, but that's probably because nearly all my C experience in recent years is in Perl XS modules. ------=_NextPart_000_0066_01C0C0F1.A1681C60 Content-Type: application/octet-stream; name="init.sh" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="init.sh" :=0A= # Load functions for cygwin-build directory operations=0A= =0A= export CVSROOT=3D:pserver:anoncvs AT anoncvs DOT cygnus DOT com:/cvs/src=0A= =0A= cb_base=3D/c/cygwin-build=0A= =0A= cb_src=3D$cb_base/src=0A= cb_obj=3D$cb_base/obj=0A= cb_log=3D$cb_base/log=0A= cb_install=3D$cb_base/install=0A= =0A= cb_date=3D$(date '+%y%m%d')=0A= =0A= function cb_cd {=0A= cd $cb_base/$1=0A= }=0A= =0A= function cb_tail {=0A= cd $cb_log=0A= case $1 in=0A= l*) cb_log_file=3Dlogin-$cb_date.log ;;=0A= u*) cb_log_file=3Dupdate-$cb_date.log ;;=0A= c*) cb_log_file=3Dconfigure-$cb_date.log ;;=0A= m*) cb_log_file=3Dmake-$cb_date.log ;;=0A= i*) cb_log_file=3Dinstall-$cb_date.log ;;=0A= *) echo "Invalid cb_tail option ($1):"=0A= echo " Allowed: (init), (u)pdate, (c)onfig, (m)ake, = (i)nstall"=0A= return=0A= ;;=0A= esac=0A= if [[ ! -f $cb_log_file ]]; then=0A= touch $cb_log_file=0A= echo "New file $cb_log_file"=0A= fi=0A= tail -50f $cb_log_file=0A= }=0A= =0A= function cb_login {=0A= cd $cb_src=0A= cb_log_file=3D$cb_log/init-$cb_date.log=0A= echo "=3D=3D=3D Begin:" $(date '+%Y-%m-%d %T') "$@" >> $cb_log_file=0A= cvs login >> $cb_log_file 2>&1=0A= echo "=3D=3D=3D End:" $(date '+%Y-%m-%d %T') >> $cb_log_file=0A= }=0A= =0A= function cb_update {=0A= cd $cb_src=0A= cb_log_file=3D$cb_log/update-$cb_date.log=0A= echo "=3D=3D=3D Begin:" $(date '+%Y-%m-%d %T') "$@" >> $cb_log_file=0A= cvs update >> $cb_log_file 2>&1=0A= echo "=3D=3D=3D End:" $(date '+%Y-%m-%d %T') >> $cb_log_file=0A= }=0A= =0A= function cb_config {=0A= cd $cb_obj=0A= cb_log_file=3D$cb_log/configure-$cb_date.log=0A= echo "=3D=3D=3D Begin:" $(date '+%Y-%m-%d %T') "$@" >> $cb_log_file=0A= $cb_src/configure --prefix=3D$cb_install -v >> $cb_log_file 2>&1=0A= echo "=3D=3D=3D End:" $(date '+%Y-%m-%d %T') >> $cb_log_file=0A= }=0A= =0A= function cb_make {=0A= cd $cb_obj/$1=0A= if [[ $# -gt 0 ]]; then shift; fi=0A= cb_log_file=3D$cb_log/make-$cb_date.log=0A= echo "=3D=3D=3D Begin:" $(date '+%Y-%m-%d %T') "$@" >> $cb_log_file=0A= make $* >> $cb_log_file 2>&1=0A= echo "=3D=3D=3D End:" $(date '+%Y-%m-%d %T') >> $cb_log_file=0A= }=0A= =0A= function cb_install {=0A= cd $cb_obj/$1=0A= cb_log_file=3D$cb_log/install-$cb_date.log=0A= echo "=3D=3D=3D Begin:" $(date '+%Y-%m-%d %T') "$@" >> $cb_log_file=0A= make install >> $cb_log_file 2>&1=0A= echo "=3D=3D=3D End:" $(date '+%Y-%m-%d %T') >> $cb_log_file=0A= }=0A= ------=_NextPart_000_0066_01C0C0F1.A1681C60 Content-Type: text/plain; charset=us-ascii -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple ------=_NextPart_000_0066_01C0C0F1.A1681C60--