Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754750AbcL3W6p (ORCPT ); Fri, 30 Dec 2016 17:58:45 -0500 Received: from mo4-p00-ob.smtp.rzone.de ([81.169.146.219]:35918 "EHLO mo4-p00-ob.smtp.rzone.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754710AbcL3W6i (ORCPT ); Fri, 30 Dec 2016 17:58:38 -0500 X-RZG-AUTH: :OH8QVVOrc/CP6za/qRmbF3BWedPGA1vjs2ejZCzW8NRdwTYefHi0L5RzHLEjAZn5asq7vKs= X-RZG-CLASS-ID: mo00 From: Thomas Schoebel-Theuer To: linux-kernel@vger.kernel.org, tst@schoebel-theuer.de Subject: [RFC 30/32] mars: add new module Makefile Date: Fri, 30 Dec 2016 23:57:56 +0100 Message-Id: <4a6523f9a90b86a7669b965612ac08ccb8e26b8d.1483138400.git.tst@schoebel-theuer.de> X-Mailer: git-send-email 2.11.0 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3157 Lines: 110 Signed-off-by: Thomas Schoebel-Theuer --- drivers/staging/mars/Makefile | 96 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 drivers/staging/mars/Makefile diff --git a/drivers/staging/mars/Makefile b/drivers/staging/mars/Makefile new file mode 100644 index 000000000000..5e94c3c692c2 --- /dev/null +++ b/drivers/staging/mars/Makefile @@ -0,0 +1,96 @@ +# +# Makefile for MARS +# + +# remove_this +# +# TST: this was required by some sysadmins some years ago for +# very 1&1-specific OOT Debian build methods. +# Not tested in other environments. Might need some tweaks, or could +# be removed in the long term. +# +ifndef CONFIG_MARS +# mars_config.h is generated by a simple Kconfig parser (gen_config.pl) +# at build time. +# It does not respect any Kconfig dependencies. +# Therefore, it is unsafe. Use at your own risk! +# It is ONLY used for out-of-tree builds. +# +CONFIG_MARS_BIGMODULE := m +CONFIG_MARS_NET_COMPAT := y +obj-$(CONFIG_MARS_BIGMODULE) += mars.o +extra-y += mars_config.h +GEN_CONFIG_SCRIPT := $(src)/../scripts/gen_config.pl +$(obj)/mars_config.h: $(obj)/buildtag.h +$(obj)/mars_config.h: $(src)/Kconfig $(GEN_CONFIG_SCRIPT) + $(Q)$(kecho) "MARS: using compiler $($(CC) --version | head -1)" + $(CC) -v + $(Q)$(kecho) "MARS: Generating $@" + $(Q)set -e; \ + if [ ! -x $(GEN_CONFIG_SCRIPT) ]; then \ + $(kecho) "MARS: cannot execute script $(GEN_CONFIG_SCRIPT)"; \ + /bin/false; \ + fi; \ + cat $< | $(GEN_CONFIG_SCRIPT) > $@; + cat $@; +endif +# end_remove_this + +obj-$(CONFIG_MARS) += mars.o + +KBUILD_CFLAGS += -fdelete-null-pointer-checks + +# remove_this +# The following is 1&1 specific. Don't use anywhere else. +ifneq ($(KBUILD_EXTMOD),) + CONFIG_MARS := m +# mars_config.h is generated by a simple Kconfig parser (gen_config.pl) +# at build time. +# It does not respect any Kconfig dependencies. +# Therefore, it is unsafe. Use at your own risk! +# It is ONLY used for out-of-tree builds. +# +extra-y += mars_config.h +GEN_CONFIG_SCRIPT := $(src)/../scripts/gen_config.pl +$(obj)/mars_config.h: $(obj)/buildtag.h +$(obj)/mars_config.h: $(src)/Kconfig $(GEN_CONFIG_SCRIPT) + $(Q)$(kecho) "MARS: using compiler $($(CC) --version | head -1)" + $(CC) -v + $(Q)$(kecho) "MARS: Generating $@" + $(Q)set -e; \ + if [ ! -x $(GEN_CONFIG_SCRIPT) ]; then \ + $(kecho) "MARS: cannot execute script $(GEN_CONFIG_SCRIPT)"; \ + /bin/false; \ + fi; \ + cat $< | $(GEN_CONFIG_SCRIPT) > $@; + cat $@; +endif +# end_remove_this + +obj-$(CONFIG_MARS) += mars.o + +mars-objs := \ + lamport.o \ + brick_say.o \ + brick_mem.o \ + brick.o \ + xio_bricks/xio.o \ + xio_bricks/lib_log.o \ + lib/lib_rank.o \ + lib/lib_limiter.o \ + lib/lib_timing.o \ + xio_bricks/lib_mapfree.o \ + xio_bricks/xio_net.o \ + mars/server_strategy.o \ + xio_bricks/xio_server.o \ + xio_bricks/xio_client.o \ + xio_bricks/xio_sio.o \ + xio_bricks/xio_bio.o \ + xio_bricks/xio_if.o \ + xio_bricks/xio_copy.o \ + xio_bricks/xio_trans_logger.o \ + mars/main_strategy.o \ + mars/net.o \ + mars/mars_proc.o \ + mars/mars_main.o + -- 2.11.0