summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile28
1 files changed, 23 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index 5c5c2aa..adaf1a6 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,11 @@
-AR = ar
+#
+# This file is part of musl-mod: modified version of Musl libc library.
+# musl-mod in general and this file specifically are available under
+# MIT license. See COPYRIGHT file.
+#
+
CC = gcc
+AR = ar
CFLAGS = -g
arch = x86_64
@@ -12,11 +18,13 @@ cflags = -pipe -std=c99 -nostdinc -D_XOPEN_SOURCE=700 \
-Iarch/$(arch) -Iarch/generic -Isrc/include -Isrc/internal \
-Igenerated/include -Iinclude $(CFLAGS)
-prefix = /tmp/root
+bindir = $(prefix)/bin
includedir = $(prefix)/include
libdir = $(prefix)/lib
-src_dirs = crt src/* src/mallocng
+include config.mk
+
+src_dirs = crt src/* src/malloc/mallocng
common_src = $(wildcard $(addsuffix /*.c, $(src_dirs)))
arch_src = $(wildcard $(addsuffix /$(arch)/*.[csS], $(src_dirs)))
@@ -45,6 +53,8 @@ dirs = $(sort $(dir $(generated_headers)))
### Tools ###
+musl_make = tools/musl-make
+
gcc_prefix = $(dir $(shell gcc -print-libgcc-file-name))
tool_cflags = -Wall -nostdinc -Wno-main \
@@ -107,6 +117,10 @@ libc.a: $(all_obj)
rm -f $@
$(AR) rcs $@ $^
+$(DESTDIR)$(bindir)/%: tools/%
+ $(install_cmd)
+ chmod +x $@
+
$(DESTDIR)$(libdir)/%: %
$(install_cmd)
@@ -122,9 +136,10 @@ $(DESTDIR)$(includedir)/bits/%: generated/include/bits/%
$(DESTDIR)$(includedir)/%: include/%
$(install_cmd)
+install-progs: $(musl_make:tools/%=$(DESTDIR)$(bindir)/%)
install-libs: $(addprefix $(DESTDIR)$(libdir)/, $(lib_obj))
install-headers: $(all_inc:include/%=$(DESTDIR)$(includedir)/%)
-install: install-libs install-headers
+install: install-progs install-libs install-headers
musl-1.2.5-mod.tar.gz:
git archive --format=tar.gz --prefix=musl-1.2.5-mod/ -o $@ HEAD
@@ -132,5 +147,8 @@ musl-1.2.5-mod.tar.gz:
clean:
rm -rf generated
rm -f crt/*.o crt/*/*.o src/*/*.o src/*/*/*.o libc.a crt*.o
- rm -f tools/*.o tools/sed tools/make
+ rm -f tools/*.o tools/sed tools/musl-make
rm -f musl-*.tar.gz
+
+distclean: clean
+ rm -f config.mk