From owner-freebsd-current Fri Nov 22 3:38:49 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A2C2037B401 for ; Fri, 22 Nov 2002 03:38:43 -0800 (PST) Received: from whale.sunbay.crimea.ua (whale.sunbay.crimea.ua [212.110.138.65]) by mx1.FreeBSD.org (Postfix) with ESMTP id D227F43EB2 for ; Fri, 22 Nov 2002 03:38:36 -0800 (PST) (envelope-from ru@whale.sunbay.crimea.ua) Received: from whale.sunbay.crimea.ua (ru@localhost [127.0.0.1]) by whale.sunbay.crimea.ua (8.12.6/8.12.6/Sunbay) with ESMTP id gAMBcEbS021931 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO); Fri, 22 Nov 2002 13:38:14 +0200 (EET) (envelope-from ru@whale.sunbay.crimea.ua) Received: (from ru@localhost) by whale.sunbay.crimea.ua (8.12.6/8.12.6/Submit) id gAMBcAN6021920; Fri, 22 Nov 2002 13:38:10 +0200 (EET) Date: Fri, 22 Nov 2002 13:38:10 +0200 From: Ruslan Ermilov To: Terry Lambert Cc: "M. Warner Losh" , current@FreeBSD.org Subject: Re: Cross-Development with NetBSD Message-ID: <20021122113810.GA11000@sunbay.com> References: <20021121151714.U961-100000@squirm.dsto.defence.gov.au> <20021121.001014.56348240.imp@bsdimp.com> <20021121102050.GC81999@sunbay.com> <20021121.062809.64538355.imp@bsdimp.com> <20021121142826.GA12467@sunbay.com> <3DDD3432.2E7950A@mindspring.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="E13BgyNx05feLLmH" Content-Disposition: inline In-Reply-To: <3DDD3432.2E7950A@mindspring.com> User-Agent: Mutt/1.5.1i Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG --E13BgyNx05feLLmH Content-Type: multipart/mixed; boundary="MW5yreqqjyrRcusr" Content-Disposition: inline --MW5yreqqjyrRcusr Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Nov 21, 2002 at 11:29:54AM -0800, Terry Lambert wrote: > Ruslan Ermilov wrote: > > > NetBSD builds a directory full of tools that you can later use to > > > incrementally build, say, 'ls' or 'cat' because one can define > > > USETOOLS to be 'yes' and have the make automatically pick them up when > > > rebuilding. There are a few of the details I'm a little unclear on, > > > but that's the jist of it. > > > > We also can, this just requires a few really tiny tweaks to Makefile.in= c1, > > and I've posted them already some time ago -- basically, for each archi= tecture > > you should build the subset of buildworld targets (WMAKE_TGTS), up to a= nd > > including _libraries (if you want to build roughly any bit later), and > > them you can ``make {depend|all} SUBDIR_OVERRIDE=3Dbin/cat'' for each of > > the desired TARGET_ARCH. >=20 > Any ETA on when this will be committed? >=20 It's already available, in some form (please see the attached). > > I know that the Alpha and sparc64 binaries produced on i386 work. >=20 > I thought that the Alpha boot blocks ended up too large in the > cross-build case? They did, last time I tried it. >=20 "Binaries" in the usual sense -- libraries and programs. As for boot blocks, they seem to be fine nowadays -- but I lack the necessary h/w to actually test (and fix if needed the building of) them: ftp://ftp.sunbay.net/pub/FreeBSD/snapshots/alpha/ > > I know that cross-compiling i386 on either Alpha or sparc64 is > > broken (GCC sometimes produces different assembler output than > > the native compiler). I lack the necessary hardware to actually > > test/fix the issues with cross-releases. >=20 > I don't think he was attacking you, personally, to ask you to > fix the problem, I think he was just noting the problem exists. >=20 I don't think either -- please see my reply to Warner. :-) > One thing that would help a lot -- and probably be helpful in > general -- would be a binary compare tool that ignored date > stamps in things like libraries, tar images, etc., so that you > could compare where things differ, easily, allowing someone to > track down differences. >=20 I use -save-temps option to cc(1) to do this, if I find any differences, and compare .s and .i files instead. > It would be helpful in general to be able to compare what you > built vs. a release version, to assemble binary only delta lists, > for preparations for upgrade tools, etc.. >=20 > I keep meaning to do this, but I really don't want to have to > release the tool under the GPL, if I don't have to. Cheers, --=20 Ruslan Ermilov Sysadmin and DBA, ru@sunbay.com Sunbay Software AG, ru@FreeBSD.org FreeBSD committer, +380.652.512.251 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age --MW5yreqqjyrRcusr Content-Type: message/rfc822 Content-Disposition: inline Date: Wed, 7 Aug 2002 11:22:01 +0300 From: Ruslan Ermilov To: Mark Peek Subject: Re: Improving cross platform testing Message-ID: <20020807082201.GA43529@sunbay.com> References: <20020725155042.GA26249@sunbay.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="da4uJneut+ArUgXk" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.3.99i --da4uJneut+ArUgXk Content-Type: multipart/mixed; boundary="l76fUT7nc3MelDdI" Content-Disposition: inline --l76fUT7nc3MelDdI Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jul 25, 2002 at 07:46:50PM -0700, Mark Peek wrote: > At 6:50 PM +0300 7/25/02, Ruslan Ermilov wrote: > >How about this simple script (tinder.sh)? > > > >: #!/bin/sh > >: cd /usr/src > >: ARCHES=3D"i386 alpha sparc64" > >: if [ "x$1" =3D "x" ]; then > >: for arch in ${ARCHES}; do > >: make TARGET_ARCH=3D${arch} -j4 -m/usr/src/share/mk \ > >: -fMakefile.inc1 -DNOCLEAN crossenv > >: done > >: else > >: for arch in ${ARCHES}; do > >: for target in cleandir obj depend all; do > >: make TARGET_ARCH=3D${arch} ${target} SUBDIR_OVERRIDE=3D$1 > >: done > >: done > >: fi > > > >You could then run it twice: > > > >sh ./tinder.sh (rebuild cross environment: compiler, binutils, headers,= =20 > >libs) > > > >sh ./tinder.sh bin/tcsh (test if bin/tcsh builds ok) > > > > > >... with this small assorted patch for Makefile.inc1, just to avoid doing > >a whole buildworld; we need it for PicoBSD anyway: > > > >%%% > >Index: Makefile.inc1 > >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > >RCS file: /home/ncvs/src/Makefile.inc1,v > >retrieving revision 1.297 > >diff -u -p -u -r1.297 Makefile.inc1 > >--- Makefile.inc1 24 Jul 2002 23:08:57 -0000 1.297 > >+++ Makefile.inc1 25 Jul 2002 15:37:51 -0000 > >@@ -329,6 +329,8 @@ WMAKE_TGTS+=3D _includes _libraries _depen > > buildworld: ${WMAKE_TGTS} > > .ORDER: ${WMAKE_TGTS} > > > >+crossenv: ${WMAKE_TGTS:N_depend:Neverything} > >+ > > # > > # installcheck > > # > >%%% >=20 >=20 > Very cool! I like it in principle! :-) The crossenv build worked fine=20 > but the compilation of bin/tcsh only resulted in building 3 copies of=20 > the i386 tcsh. I think it needs the WMAKE environment exported so it=20 > has the path to the cross compiler and points to the appropriate=20 > OBJDIR. >=20 Here's the new script that should work. Sorry for a late reply. Cheers, --=20 Ruslan Ermilov Sysadmin and DBA, ru@sunbay.com Sunbay Software AG, ru@FreeBSD.org FreeBSD committer, +380.652.512.251 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age --l76fUT7nc3MelDdI Content-Type: application/x-sh Content-Disposition: attachment; filename="tinder.sh" Content-Transfer-Encoding: quoted-printable #!/bin/sh=0A=0ASRC=3D/usr/src=0AARCHES=3D"i386 alpha sparc64"=0A=0Ausage()= =0A{=0A echo "usage: $0 crossenv | dir_to_build ..."=0A exit 1=0A}=0A=0A[ $= # -lt 1 ] && usage=0A=0Acd ${SRC} || exit 1=0A=0Acase "$1" in=0Acrossenv)= =0A [ $# -ne 1 ] && usage=0A for arch in ${ARCHES}; do=0A make TARGET_ARCH= =3D${arch} -j4 -m${SRC}/share/mk \=0A -fMakefile.inc1 -DNOCLEAN crosse= nv=0A done=0A ;;=0A*)=0A for arch in ${ARCHES}; do=0A for target in _cleano= bj _obj _depend everything; do=0A make TARGET_ARCH=3D${arch} -m${SRC}/shar= e/mk \=0A -fMakefile.inc1 ${target} SUBDIR_OVERRIDE=3D"$*"=0A done=0A = done=0A ;;=0Aesac=0A --l76fUT7nc3MelDdI-- --da4uJneut+ArUgXk Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (FreeBSD) iD8DBQE9UNipUkv4P6juNwoRAvxcAJ91LUlIHr8e1+vOr35ujYU8zudO4wCfUI3i hcfmizCHrViepGk/NvrEBxw= =Mcap -----END PGP SIGNATURE----- --da4uJneut+ArUgXk-- --MW5yreqqjyrRcusr-- --E13BgyNx05feLLmH Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (FreeBSD) iD8DBQE93hciUkv4P6juNwoRAoTUAJ9CNoMdcNcWka4fuyomBdkqr3xkZgCfeR0j 4H+5zNPvwTC9CHSOLuyB3Bw= =uo2+ -----END PGP SIGNATURE----- --E13BgyNx05feLLmH-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message