From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [IPv6:2a00:1450:4864:20::432]) by sourceware.org (Postfix) with ESMTPS id 651923858414 for ; Wed, 8 Sep 2021 11:30:04 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 651923858414 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=embecosm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=embecosm.com Received: by mail-wr1-x432.google.com with SMTP id x6so2718018wrv.13 for ; Wed, 08 Sep 2021 04:30:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embecosm.com; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=RHEo/TnVmmovZZZH/kktOWVcA717+iXaF/fBsp/ykGE=; b=ES2U6awA32/+VTdKu5BZHkI65PBCnpabi6Vv+047Mkq47a/LPmk/IGVQ8u8R0hRAeq HqhsKu6ogNIaNuWELJSvfwldyH4NYBUpvBqCWS9ngln51tRPXZtMda13SN/TV0GV86oc d31n2I8JyjZXieRCxkzSgu+uhIuHF/fnKRyFAkM3ZNchGoCmubMYWxyPtJWgpQm4UrER DyW+w1/sJzTYK3esOdkO/CmRdkH4/pAmRAfTgZbw2WvJIPclJcQiNpHwlPAi6hKXs2pO 5PTUdmo49tt3zjRVGHM2Ctt5Znb7Qb4ekZLvsnxNjLt5RXqpuvEGrdpiyFwDy7WyA0jS Gslg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=RHEo/TnVmmovZZZH/kktOWVcA717+iXaF/fBsp/ykGE=; b=sJ9mdAIw1cCEH16DiHHNugdrFt8LN+LWOjZFFrKlzhFyDGBuTTmWgiYCIrF9236u1N RrLGkwIJvt/5znvfrHRVo63OjAmHBS2Irb6crvtnPeKFQgLdKumQGMr0ezlISLTUJ2f9 7mBKIaDMzkACiE1wtuqc1zIU5mR0sz4yhC73kyMd6+Cl9JymDIrmerQf2a/Xz9MWoo3x 6UjaOhH0z6wAT4DwF4sK77Kt9OREWW0VXYqctSS3X2r/zpSDyBy5R0zkIKB+Y/JLe8y6 o+EQVKdH51UcR/jadHq/V/7gmuNaaqZnDSwgmwEiI3aAcwoB9JOvt+q6FhZLB44hq1S7 RPAA== X-Gm-Message-State: AOAM531oZLj8xHGSK5B97Eiu3J/SDB7HWuX9eWGfP5TvfvY4WDBQwVpL OgauGFW852T2/jzh5Ryp7lWPHb986e/IcQ== X-Google-Smtp-Source: ABdhPJzC533IO2SwtSOw5ZaUgRCU61Br9dhX0RDTNVnAqz4CRkoNQ1QDjXPVVnOBtiMRepQ9PBgMPw== X-Received: by 2002:a05:6000:1603:: with SMTP id u3mr3445984wrb.227.1631100603522; Wed, 08 Sep 2021 04:30:03 -0700 (PDT) Received: from localhost (host109-151-25-83.range109-151.btcentralplus.com. [109.151.25.83]) by smtp.gmail.com with ESMTPSA id m3sm2406156wrg.45.2021.09.08.04.30.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Sep 2021 04:30:03 -0700 (PDT) Date: Wed, 8 Sep 2021 12:30:02 +0100 From: Andrew Burgess To: SAIFI Cc: gdb@sourceware.org Subject: Re: building GDB natively using 'configure' at 'two' levels Message-ID: <20210908113002.GE4124615@embecosm.com> References: <39174ae-8f97-1a1d-23e4-54688976504a@strikr.io> <20210908081251.GD4124615@embecosm.com> <2df2c098-b45b-9f9-face-36ec5384bed@strikr.io> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2df2c098-b45b-9f9-face-36ec5384bed@strikr.io> X-Operating-System: Linux/5.8.18-100.fc31.x86_64 (x86_64) X-Uptime: 12:25:37 up 22 days, 21 min, X-Editor: GNU Emacs [ http://www.gnu.org/software/emacs ] X-Spam-Status: No, score=-5.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Sep 2021 11:30:07 -0000 * SAIFI [2021-09-08 09:47:12 +0000]: > On Wed, 8 Sep 2021, Andrew Burgess wrote: > > > > Here's how I'd configure and build GDB: > > > > ... > > ../src/configure .... all configure options here .... > > > > .... > > Configure options passed to src/configure will be forwarded to > > src/gdb/configure automatically. > > > > Thanks Andrew ! > > in essence, 'sub'-configure options can be specified to the 'top'-configure > > ${SRC}/gdb/configure \ > --prefix=/opt/gdb \ > --datadir=/opt/gdb/data \ > --htmldir=/opt/gdb/doc \ > --disable-binutils \ > --disable-ld \ > --disable-gold \ > --disable-gas \ > --disable-sim \ > --disable-gprof \ > --disable-largefile \ > --with-gnu-ld \ > --with-expat=no \ > --with-python=no \ > --with-guile=no \ > --with-intel-pt=no \ > --with-babeltrace=no > > in other words, > > as an example, given that there are three sub directories with a configure script > sub_dir_01 > sub_dir_02 > sub_dir_03 > > if sub_dir_01 'configure' had options > o1 > o2 > o3 > and sub_dir_02 'configure' had options > o4 > o5 > then top level 'configure' will apply the 'union' of all the options specified > o1 > o2 > o3 > o4 > o5 > to each sub-directory which has a 'configure' script, ie. > sub_dir_01 > sub_dir_02 > sub_dir_03 > > sorry for being pedantic, just making sure that i understood 'the > manner of application of options' correctly. You are correct. This works for us thanks to AC_DISABLE_OPTION_CHECKING in our top level configure.ac file. There's more details about this here: https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Option-Checking.html Because we have a model where we have a top level configure script recursively invokes the configure script for each sub-module, we need the top level script not to error if it sees an option it doesn't understand. Thanks, Andrew