From patchwork Mon Jan 8 09:55:30 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yao Qi X-Patchwork-Id: 25268 Received: (qmail 1940 invoked by alias); 8 Jan 2018 09:55:39 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 1916 invoked by uid 89); 8 Jan 2018 09:55:36 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-26.9 required=5.0 tests=BAYES_00, FREEMAIL_FROM, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_PASS autolearn=ham version=3.3.2 spammy=obs X-HELO: mail-wr0-f179.google.com Received: from mail-wr0-f179.google.com (HELO mail-wr0-f179.google.com) (209.85.128.179) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 08 Jan 2018 09:55:34 +0000 Received: by mail-wr0-f179.google.com with SMTP id z48so4347535wrz.6 for ; Mon, 08 Jan 2018 01:55:34 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=2NeztvG5o4gC7bie8BMed0ZOdjxKdI8tFBao7NoPu1M=; b=N1bYDs0ttECv/O2IRF5Wwfpr3LiEepsBpjmrno2Eyxz6j5s/IBUy6IV3QLuTrfvMca Cl/OpKwPEesTsT1TfYTHTTmTeNLJA4ITmB68ZexilWDuJIiCCXsqAJNJsSVHgeZiQP7q mVnSh7FKiLNWz6+Cm/j/7fI6BvATGCZJ967B+JBjZjME7bGR8VKhnXlhfiy62B6UDl9w 61T+3+CgkciYlP0eB/PRoa/EZgP3wT5Wv4NF+YrzWZFsmPe3lLubTiZQfhTnRcSnCEtC apinx4vxtf/F6FJbKX36C89VKyx7HKw4r0cOwoNMRdtPLJNa9If/2v6zTPPVV8Ypxi8E NOow== X-Gm-Message-State: AKGB3mLIiiZSaGBoOXj6fy4p3XPWQPwInE164/N9EQaYu6j2hdYk1dEV ea7RicCKL6M4UNaVJGPVc0L4Eg== X-Google-Smtp-Source: ACJfBotIb+U2t9W/E58+zuDPPLgQOVn/n4cnE3uwXL7ANVs1PHnfNhhjeUklI9fbGZwffsl4vEXSSQ== X-Received: by 10.223.146.69 with SMTP id 63mr2921332wrj.22.1515405332463; Mon, 08 Jan 2018 01:55:32 -0800 (PST) Received: from E107787-LIN (static.42.136.251.148.clients.your-server.de. [148.251.136.42]) by smtp.gmail.com with ESMTPSA id 89sm11593558wrl.22.2018.01.08.01.55.31 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Mon, 08 Jan 2018 01:55:31 -0800 (PST) From: Yao Qi To: Simon Marchi Cc: Subject: Re: [PATCH 2/2 master/8.1] Fix GDBserver build failure when $development is false References: <1515148494-21578-1-git-send-email-yao.qi@linaro.org> <1515148494-21578-2-git-send-email-yao.qi@linaro.org> <090380b2-388c-2ba4-c7ee-d2a1f8e20e85@ericsson.com> Date: Mon, 08 Jan 2018 09:55:30 +0000 In-Reply-To: <090380b2-388c-2ba4-c7ee-d2a1f8e20e85@ericsson.com> (Simon Marchi's message of "Sat, 6 Jan 2018 12:20:59 -0500") Message-ID: <86bmi4hdyl.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 X-IsSubscribed: yes Simon Marchi writes: > Hi Yao, > > Same comment as the for the GDB patch, and here's a fixup patch that does what > I suggest. Thanks for the fixup, patch below is what I am going to push. diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in index caa94a6..3ce086d 100644 --- a/gdb/gdbserver/Makefile.in +++ b/gdb/gdbserver/Makefile.in @@ -261,7 +261,6 @@ OBS = \ regcache.o \ remote-utils.o \ rsp-low.o \ - selftest.o \ server.o \ signals.o \ signals-state-save-restore.o \ diff --git a/gdb/gdbserver/configure b/gdb/gdbserver/configure index 835dcca..ca51321 100755 --- a/gdb/gdbserver/configure +++ b/gdb/gdbserver/configure @@ -5815,6 +5815,7 @@ fi if $development; then + srv_selftest_objs="selftest.o" $as_echo "#define GDB_SELF_TEST 1" >>confdefs.h @@ -8287,7 +8288,7 @@ $as_echo "#define USE_XML 1" >>confdefs.h done fi -GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_hostio_err_objs $srv_thread_depfiles $srv_host_obs" +GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_hostio_err_objs $srv_thread_depfiles $srv_host_obs $srv_selftest_objs" GDBSERVER_LIBS="$srv_libs" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the target supports __sync_*_compare_and_swap" >&5 diff --git a/gdb/gdbserver/configure.ac b/gdb/gdbserver/configure.ac index 916384e..7ea3654 100644 --- a/gdb/gdbserver/configure.ac +++ b/gdb/gdbserver/configure.ac @@ -57,6 +57,7 @@ fi GDB_AC_LIBMCHECK(${libmcheck_default}) if $development; then + srv_selftest_objs="selftest.o" AC_DEFINE(GDB_SELF_TEST, 1, [Define if self-testing features should be enabled]) fi @@ -410,7 +411,7 @@ if test "$srv_xmlfiles" != ""; then done fi -GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_hostio_err_objs $srv_thread_depfiles $srv_host_obs" +GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_hostio_err_objs $srv_thread_depfiles $srv_host_obs $srv_selftest_objs" GDBSERVER_LIBS="$srv_libs" dnl Check whether the target supports __sync_*_compare_and_swap. diff --git a/gdb/gdbserver/server.c b/gdb/gdbserver/server.c index 3367555..890ba3c 100644 --- a/gdb/gdbserver/server.c +++ b/gdb/gdbserver/server.c @@ -3560,7 +3560,9 @@ captured_main (int argc, char *argv[]) volatile int attach = 0; int was_running; bool selftest = false; +#if GDB_SELF_TEST const char *selftest_filter = NULL; +#endif while (*next_arg != NULL && **next_arg == '-') { @@ -3684,7 +3686,9 @@ captured_main (int argc, char *argv[]) else if (startswith (*next_arg, "--selftest=")) { selftest = true; +#if GDB_SELF_TEST selftest_filter = *next_arg + strlen ("--selftest="); +#endif } else { @@ -3762,7 +3766,11 @@ captured_main (int argc, char *argv[]) if (selftest) { +#if GDB_SELF_TEST selftests::run_tests (selftest_filter); +#else + printf (_("Selftests are not available in a non-development build.\n")); +#endif throw_quit ("Quit"); } diff --git a/gdb/testsuite/gdb.server/unittest.exp b/gdb/testsuite/gdb.server/unittest.exp index 646babc..e947ff2 100644 --- a/gdb/testsuite/gdb.server/unittest.exp +++ b/gdb/testsuite/gdb.server/unittest.exp @@ -30,12 +30,19 @@ set gdbserver_command "$gdbserver --selftest" set server_spawn_id [remote_spawn target $gdbserver_command] +set test "unit tests" gdb_expect { -i $server_spawn_id - -re "Ran $decimal unit tests, 0 failed" { - pass "unit tests" + -re "Ran ($decimal) unit tests, 0 failed" { + set num_ran $expect_out(1,string) + gdb_assert "$num_ran > 0" $test } + + -re "Selftests are not available in a non-development build.\r\n$" { + unsupported $test + } + default { - fail "unit tests" + fail $test } }