linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Hui Zhu <teawater@gmail.com>
To: fengguang.wu@intel.com, linux-kernel@vger.kernel.org
Cc: Hui Zhu <teawater@gmail.com>, Hui Zhu <teawaterz@linux.alibaba.com>
Subject: [PATCH for vm-scalability] Makefile: Add static build option
Date: Sun, 19 Jan 2020 16:26:27 +0800	[thread overview]
Message-ID: <1579422387-30552-1-git-send-email-teawater@gmail.com> (raw)

Sometimes vm-scalability needs to work in an environment without an
libraries.  Supporting static build is helpful.

This commit add static build option:
make STATIC=1

Signed-off-by: Hui Zhu <teawaterz@linux.alibaba.com>
---
 Makefile | 27 +++++++++++++++++----------
 1 file changed, 17 insertions(+), 10 deletions(-)

diff --git a/Makefile b/Makefile
index 73b2ff3..eadc090 100644
--- a/Makefile
+++ b/Makefile
@@ -6,6 +6,13 @@ EXECUTABLES :=	usemem \
 		usemem_direct_write \
 		usemem_mbind
 
+ifdef STATIC
+	EXTRA_LDFLAGS := -static
+else
+	EXTRA_LDFLAGS :=
+endif
+
+
 all:	$(EXECUTABLES)
 
 clean:
@@ -15,31 +22,31 @@ distclean: clean
 	rm -f $(EXECUTABLES)
 
 usemem: usemem.o usemem_hugepages.o usemem_mincore.o
-	gcc -pthread -Wall -O -g usemem_mincore.o usemem_hugepages.o usemem.o -o usemem
+	gcc -pthread -Wall -O -g $(EXTRA_LDFLAGS) usemem_mincore.o usemem_hugepages.o usemem.o -o usemem
 
 usemem.o: usemem.c
-	gcc -O -c -Wall -g  usemem.c -o usemem.o
+	gcc -O -c -Wall -g $(EXTRA_LDFLAGS) usemem.c -o usemem.o
 
 usemem_hugepages.o: usemem_hugepages.c
-	gcc -Wall -O -c -g usemem_hugepages.c -o usemem_hugepages.o
+	gcc -Wall -O -c -g $(EXTRA_LDFLAGS) usemem_hugepages.c -o usemem_hugepages.o
 
 usemem_mincore.o: usemem_mincore.c
-	gcc -Wall -O -c -g usemem_mincore.c -o usemem_mincore.o
+	gcc -Wall -O -c -g $(EXTRA_LDFLAGS) usemem_mincore.c -o usemem_mincore.o
 
 usemem_migrate: usemem_migrate.c
-	gcc -Wall -O -g -o usemem_migrate usemem_migrate.c -lnuma
+	gcc -Wall -O -g $(EXTRA_LDFLAGS) -o usemem_migrate usemem_migrate.c -lnuma
 
 usemem_ksm: usemem_ksm.c usemem_hugepages.c
-	gcc -Wall -g -o usemem_ksm usemem_ksm.c usemem_hugepages.c
+	gcc -Wall -g $(EXTRA_LDFLAGS) -o usemem_ksm usemem_ksm.c usemem_hugepages.c
 
 usemem_mbind: usemem_mbind.c
-	gcc -Wall -g -o usemem_mbind usemem_mbind.c -lnuma
+	gcc -Wall -g $(EXTRA_LDFLAGS) -o usemem_mbind usemem_mbind.c -lnuma
 
 usemem_ksm_hugepages: usemem_ksm_hugepages.c
-	gcc -Wall -g -o usemem_ksm_hugepages usemem_ksm_hugepages.c
+	gcc -Wall -g $(EXTRA_LDFLAGS) -o usemem_ksm_hugepages usemem_ksm_hugepages.c
 
 usemem_direct_write: usemem_direct_write.c
-	gcc -Wall -g -o usemem_direct_write usemem_direct_write.c
+	gcc -Wall -g $(EXTRA_LDFLAGS) -o usemem_direct_write usemem_direct_write.c
 
 usemem_remap: usemem_remap.c
-	gcc -Wall -g -o usemem_remap usemem_remap.c
+	gcc -Wall -g $(EXTRA_LDFLAGS) -o usemem_remap usemem_remap.c
-- 
2.7.4


             reply	other threads:[~2020-01-19  8:26 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-19  8:26 Hui Zhu [this message]
2020-03-03  6:24 [PATCH for vm-scalability] Makefile: Add static build option Hui Zhu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1579422387-30552-1-git-send-email-teawater@gmail.com \
    --to=teawater@gmail.com \
    --cc=fengguang.wu@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=teawaterz@linux.alibaba.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).