Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 7E3AD200D52 for ; Sat, 2 Dec 2017 09:42:50 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 7CA28160BF8; Sat, 2 Dec 2017 08:42:50 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id C1E9B160BF7 for ; Sat, 2 Dec 2017 09:42:49 +0100 (CET) Received: (qmail 3761 invoked by uid 500); 2 Dec 2017 08:42:48 -0000 Mailing-List: contact dev-help@openoffice.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openoffice.apache.org Delivered-To: mailing list dev@openoffice.apache.org Received: (qmail 3750 invoked by uid 99); 2 Dec 2017 08:42:48 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 02 Dec 2017 08:42:48 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id D4636180701 for ; Sat, 2 Dec 2017 08:42:47 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -1.328 X-Spam-Level: X-Spam-Status: No, score=-1.328 tagged_above=-999 required=6.31 tests=[RCVD_IN_DNSWL_MED=-2.3, SPF_SOFTFAIL=0.972] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id DnSzF24siZRi for ; Sat, 2 Dec 2017 08:42:46 +0000 (UTC) Received: from mout01.posteo.de (mout01.posteo.de [185.67.36.141]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 2CCBC5F56D for ; Sat, 2 Dec 2017 08:42:46 +0000 (UTC) Received: from submission (posteo.de [89.146.220.130]) by mout01.posteo.de (Postfix) with ESMTPS id C398720E00 for ; Sat, 2 Dec 2017 09:42:38 +0100 (CET) Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 3ypl5B0Nbrz9rxP for ; Sat, 2 Dec 2017 09:42:37 +0100 (CET) Message-ID: <1512204157.993.12.camel@apache.org> Subject: Re: A more sane way to build - SCons, deCygwination and other hopes From: Peter Kovacs To: dev@openoffice.apache.org Date: Sat, 02 Dec 2017 09:42:37 +0100 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.26.2 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit archived-at: Sat, 02 Dec 2017 08:42:50 -0000 sounds great from what you write. Lets try SCons build system. Where can I find your changes so I can help? Have you checked them into trunk? I have some expreience with python, which will come in handy. Meanwhile I read Scons Documentation. Am Samstag, den 02.12.2017, 10:05 +0200 schrieb Damjan Jovanovic: > Hi > > After days of failing to add a few new simple features to gbuild, > I've now > reached my limits, and have begun experimenting with the SCons build > system > instead. > > It's starting to work. Having ported some of gbuild.mk, LinkTarget.mk > and > platform/freebsd.mk to SCons, as well as a module's local gbuild > files, I > can now compile files and (badly) link them into libraries, and clean > the > build. > > SCons is an advanced next-generation build system like gbuild, with > high > level declarative syntax in Python, support for multiple modules that > build > in parallel, header dependencies, file change detection through MD5 > sums of > contents instead of timestamps so rebuilds are faster, etc. It builds > C, > C++, Objective C, Java, Fortran, D, the sorely necessary Flex and > Yacc that > gbuild doesn't support. It supports tons of platforms and compilers, > including OS/2. It's maintainable and usable, can print debugging > info such > as dependency trees, and is generally pleasant to work with. We've > discussed it before on this list, but I never got to trying it until > now. > > Virtually everything gbuild does, is already done by SCons, and often > done > much better. The syntax for SCons files is similar/related to > gbuild's > syntax, so an automated conversion from gbuild to SCons might even be > possible. > > So far, I have defines, includes and C[XX]FLAGS working. I've > structured it > a bit better, with platform-specific files in classes that only > provide > variables to slot in higher up, instead of one giant set of globally > mutable global variables like in gbuild. Linking still needs a bit of > work. > Windows is next on the list, as Cygwin will be the ultimate test of > whether > we can use it. > > I am very hopeful. SCons has a long history and is used by other > projects, > while only OO.o derivatives use gbuild. It's well documented. It > supports > features we need which gbuild doesn't, like library version names and > flex/yacc. It's supposed to work on Windows, both inside and outside > of > Cygwin and could help us build without Cygwin some day. It supports > many > versions of Visual Studio and could help us in upgrading to a new > one. We > will need to add custom builders to SCons for our custom file formats > like > IDL, but it's just Python, not my favorite language but infinitely > better > than GNU make. > > It would help if someone could review my changes, as I am not very > familiar > with Python and there might be better ways to write some of the code. > I'll > post a patch for review after some further development. > > Thank you > Damjan --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org For additional commands, e-mail: dev-help@openoffice.apache.org