From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37208) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VJk4U-0003JX-Jm for qemu-devel@nongnu.org; Wed, 11 Sep 2013 09:03:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VJk4O-0007mg-AX for qemu-devel@nongnu.org; Wed, 11 Sep 2013 09:03:02 -0400 Received: from lhrrgout.huawei.com ([194.213.3.17]:33995) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VJk4O-0007mc-1Z for qemu-devel@nongnu.org; Wed, 11 Sep 2013 09:02:56 -0400 Message-ID: <523069F5.50107@huawei.com> Date: Wed, 11 Sep 2013 15:02:45 +0200 From: Claudio Fontana MIME-Version: 1.0 References: <52306808.4030701@huawei.com> In-Reply-To: <52306808.4030701@huawei.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] [RFC 2/4] rules.mak: support C++ compiling and linking List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "qemu-devel@nongnu.org" Cc: Peter Maydell support compilation of .cc and .cpp files, and if C++ is enabled always link with C++ in the non-libtool case. Signed-off-by: Claudio Fontana --- rules.mak | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/rules.mak b/rules.mak index 4499745..d2f1b1f 100644 --- a/rules.mak +++ b/rules.mak @@ -8,9 +8,14 @@ MAKEFLAGS += -rR %.d: %.h: %.c: +%.cc: +%.cpp: %.m: %.mak: +# Flags for C++ compilation +QEMU_CXXFLAGS = -D__STDC_LIMIT_MACROS $(filter-out -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wold-style-declaration -Wold-style-definition -Wredundant-decls, $(QEMU_CFLAGS)) + # Flags for dependency generation QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d @@ -21,11 +26,21 @@ QEMU_INCLUDES += -I$(/dev/null 2>&1 && echo OK), $2, $3) -VPATH_SUFFIXES = %.c %.h %.S %.m %.mak %.texi %.sh %.rc +VPATH_SUFFIXES = %.c %.h %.S %.cpp %.cc %.m %.mak %.texi %.sh %.rc + set-vpath = $(if $1,$(foreach PATTERN,$(VPATH_SUFFIXES),$(eval vpath $(PATTERN) $1))) # find-in-path -- 1.8.1