summary refs log tree commit diff
path: root/src/rt
diff options
context:
space:
mode:
authorGraydon Hoare <graydon@mozilla.com>2011-08-04 18:26:54 -0700
committerBrian Anderson <banderson@mozilla.com>2011-08-05 11:57:07 -0700
commit7da64ae461bdf5c159d1566d66b9561c29f4224e (patch)
treef38191b53f667ca0454b7841a8d1faaecd8720e1 /src/rt
parentb2c3fc739c82968dcd629a7e3f3a468e366be976 (diff)
downloadrust-7da64ae461bdf5c159d1566d66b9561c29f4224e.tar.gz
rust-7da64ae461bdf5c159d1566d66b9561c29f4224e.zip
Munge libuv makefiles sufficiently to build out of tree.
Diffstat (limited to 'src/rt')
-rw-r--r--src/rt/libuv/Makefile54
-rw-r--r--src/rt/libuv/config-mingw.mk29
-rw-r--r--src/rt/libuv/config-unix.mk47
3 files changed, 52 insertions, 78 deletions
diff --git a/src/rt/libuv/Makefile b/src/rt/libuv/Makefile
index 0b4f38bb86f..b8d3c685952 100644
--- a/src/rt/libuv/Makefile
+++ b/src/rt/libuv/Makefile
@@ -18,13 +18,30 @@
 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 # IN THE SOFTWARE.
 
+include ../../config.mk
+CFLAGS=-m32
+LDFLAGS=-m32
+CC=gcc 
+
+S:=$(shell cd ../../; cd $(CFG_SRC_DIR)src/rt/libuv; pwd)
+
+ifdef VERBOSE
+  Q :=
+  EE =
+else
+  Q := @
+  EE = echo $(1)
+endif
+
+VPATH:=$(S)
+
 uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not')
 
 ifdef MSVC
 uname_S := MINGW
 endif
 
-CPPFLAGS += -Iinclude
+CPPFLAGS += -I$(S)/include
 
 CARES_OBJS =
 CARES_OBJS += src/ares/ares__close_sockets.o
@@ -77,37 +94,8 @@ else
 include config-unix.mk
 endif
 
-TESTS=test/echo-server.c test/test-*.c
-BENCHMARKS=test/echo-server.c test/dns-server.c test/benchmark-*.c
-
-all: uv.a test/run-tests test/run-benchmarks
+all: uv.a
 
 $(CARES_OBJS): %.o: %.c
-	$(CC) -o $*.o -c $(CFLAGS) $(CPPFLAGS) $< -DHAVE_CONFIG_H
-
-test/run-tests$(E): test/*.h test/run-tests.c $(RUNNER_SRC) test/runner-unix.c $(TESTS) uv.a
-	$(CC) $(CPPFLAGS) $(RUNNER_CFLAGS) $(RUNNER_LINKFLAGS) -o test/run-tests test/run-tests.c \
-		test/runner.c $(RUNNER_SRC) $(TESTS) uv.a $(RUNNER_LIBS)
-
-test/run-benchmarks$(E): test/*.h test/run-benchmarks.c test/runner.c $(RUNNER_SRC) $(BENCHMARKS) uv.a
-	$(CC) $(CPPFLAGS) $(RUNNER_CFLAGS) $(RUNNER_LINKFLAGS) -o test/run-benchmarks test/run-benchmarks.c \
-		 test/runner.c $(RUNNER_SRC) $(BENCHMARKS) uv.a $(RUNNER_LIBS)
-
-test/echo.o: test/echo.c test/echo.h
-	$(CC) $(CPPFLAGS) $(CFLAGS) -c test/echo.c -o test/echo.o
-
-
-.PHONY: clean clean-platform distclean distclean-platform test benchmark
-
-
-test: test/run-tests$(E)
-	test/run-tests
-
-bench: test/run-benchmarks$(E)
-	test/run-benchmarks
-
-clean: clean-platform
-	$(RM) -f src/*.o *.a test/run-tests$(E) test/run-benchmarks$(E)
-
-distclean: distclean-platform
-	$(RM) -f src/*.o *.a test/run-tests$(E) test/run-benchmarks$(E)
+	@$(call EE, compile: $@)
+	$(Q)$(CC) -o $*.o -c $(CFLAGS) $(CPPFLAGS) $< -DHAVE_CONFIG_H
diff --git a/src/rt/libuv/config-mingw.mk b/src/rt/libuv/config-mingw.mk
index a6e8279b239..2c29b6ebd8d 100644
--- a/src/rt/libuv/config-mingw.mk
+++ b/src/rt/libuv/config-mingw.mk
@@ -24,24 +24,22 @@ CC ?= $(PREFIX)gcc
 AR ?= $(PREFIX)ar
 E=.exe
 
-CFLAGS+=$(CPPFLAGS) -g --std=gnu89 -D_WIN32_WINNT=0x0501 -Isrc/ares/config_win32
+CFLAGS+=$(CPPFLAGS) -g --std=gnu89 -D_WIN32_WINNT=0x0501 -I$(S)src/ares/config_win32
 LINKFLAGS=-lm
 
 CARES_OBJS += src/ares/windows_port.o
 
-RUNNER_CFLAGS=$(CFLAGS) -D_GNU_SOURCE # Need _GNU_SOURCE for strdup?
-RUNNER_LINKFLAGS=$(LINKFLAGS)
-RUNNER_LIBS=-lws2_32
-RUNNER_SRC=test/runner-win.c
-
 uv.a: src/uv-win.o src/uv-common.o src/uv-eio.o src/eio/eio.o $(CARES_OBJS)
-	$(AR) rcs uv.a src/uv-win.o src/uv-common.o src/uv-eio.o src/eio/eio.o $(CARES_OBJS)
+	@$(call EE, ar: $@)
+	$(Q)$(AR) rcs uv.a $^
 
 src/uv-win.o: src/uv-win.c include/uv.h include/uv-win.h
-	$(CC) $(CFLAGS) -c src/uv-win.c -o src/uv-win.o
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(CFLAGS) -c $< -o $@
 
 src/uv-common.o: src/uv-common.c include/uv.h include/uv-win.h
-	$(CC) $(CFLAGS) -c src/uv-common.c -o src/uv-common.o
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(CFLAGS) -c $< -o $@
 
 EIO_CPPFLAGS += $(CPPFLAGS)
 EIO_CPPFLAGS += -DEIO_CONFIG_H=\"$(EIO_CONFIG)\"
@@ -49,15 +47,10 @@ EIO_CPPFLAGS += -DEIO_STACKSIZE=65536
 EIO_CPPFLAGS += -D_GNU_SOURCE
 
 src/eio/eio.o: src/eio/eio.c
-	$(CC) $(EIO_CPPFLAGS) $(CFLAGS) -c src/eio/eio.c -o src/eio/eio.o
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(EIO_CPPFLAGS) $(CFLAGS) -c $< -o $@
 
 src/uv-eio.o: src/uv-eio.c
-	$(CC) $(CPPFLAGS) -Isrc/eio/ $(CFLAGS) -c src/uv-eio.c -o src/uv-eio.o
-
-clean-platform:
-	-rm -f src/ares/*.o
-	-rm -f src/eio/*.o
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(CPPFLAGS) -I$(S)src/eio/ $(CFLAGS) -c $< -o $@
 
-distclean-platform:
-	-rm -f src/ares/*.o
-	-rm -f src/eio/*.o
diff --git a/src/rt/libuv/config-unix.mk b/src/rt/libuv/config-unix.mk
index f9d849fba9c..afdb92431c8 100644
--- a/src/rt/libuv/config-unix.mk
+++ b/src/rt/libuv/config-unix.mk
@@ -23,7 +23,7 @@ AR ?= $(PREFIX)ar
 E=
 CSTDFLAG=--std=c89 -pedantic
 CFLAGS+=-g
-CPPFLAGS += -Isrc/ev
+CPPFLAGS += -I$(S)/src/ev
 LINKFLAGS=-lm
 
 CPPFLAGS += -D_LARGEFILE_SOURCE
@@ -32,7 +32,7 @@ CPPFLAGS += -D_FILE_OFFSET_BITS=64
 ifeq (SunOS,$(uname_S))
 EV_CONFIG=config_sunos.h
 EIO_CONFIG=config_sunos.h
-CPPFLAGS += -Isrc/ares/config_sunos
+CPPFLAGS += -I$(S)/src/ares/config_sunos
 LINKFLAGS+=-lsocket -lnsl
 UV_OS_FILE=uv-sunos.c
 endif
@@ -40,7 +40,7 @@ endif
 ifeq (Darwin,$(uname_S))
 EV_CONFIG=config_darwin.h
 EIO_CONFIG=config_darwin.h
-CPPFLAGS += -Isrc/ares/config_darwin
+CPPFLAGS += -I$(S)/src/ares/config_darwin
 LINKFLAGS+=-framework CoreServices
 UV_OS_FILE=uv-darwin.c
 endif
@@ -49,7 +49,7 @@ ifeq (Linux,$(uname_S))
 EV_CONFIG=config_linux.h
 EIO_CONFIG=config_linux.h
 CSTDFLAG += -D_XOPEN_SOURCE=600
-CPPFLAGS += -Isrc/ares/config_linux
+CPPFLAGS += -I$(S)/src/ares/config_linux
 LINKFLAGS+=-lrt
 UV_OS_FILE=uv-linux.c
 endif
@@ -57,7 +57,7 @@ endif
 ifeq (FreeBSD,$(uname_S))
 EV_CONFIG=config_freebsd.h
 EIO_CONFIG=config_freebsd.h
-CPPFLAGS += -Isrc/ares/config_freebsd
+CPPFLAGS += -I$(S)/src/ares/config_freebsd
 LINKFLAGS+=
 UV_OS_FILE=uv-freebsd.c
 endif
@@ -65,7 +65,7 @@ endif
 ifneq (,$(findstring CYGWIN,$(uname_S)))
 EV_CONFIG=config_cygwin.h
 EIO_CONFIG=config_cygwin.h
-CPPFLAGS += -Isrc/ares/config_cygwin
+CPPFLAGS += -I$(S)/src/ares/config_cygwin
 LINKFLAGS+=
 UV_OS_FILE=uv-cygwin.c
 endif
@@ -78,20 +78,24 @@ RUNNER_LIBS=
 RUNNER_SRC=test/runner-unix.c
 
 uv.a: src/uv-unix.o src/uv-common.o src/uv-platform.o src/ev/ev.o src/uv-eio.o src/eio/eio.o $(CARES_OBJS)
-	$(AR) rcs uv.a src/uv-unix.o src/uv-platform.o src/uv-common.o src/uv-eio.o src/ev/ev.o \
-		src/eio/eio.o $(CARES_OBJS)
+	@$(call EE, ar: $@)
+	$(Q)$(AR) rcs uv.a $^
 
 src/uv-platform.o: src/$(UV_OS_FILE) include/uv.h include/uv-unix.h
-	$(CC) $(CSTDFLAG) $(CPPFLAGS) $(CFLAGS) -c src/$(UV_OS_FILE) -o src/uv-platform.o
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(CSTDFLAG) $(CPPFLAGS) $(CFLAGS) -c $< -o $@
 
 src/uv-unix.o: src/uv-unix.c include/uv.h include/uv-unix.h
-	$(CC) $(CSTDFLAG) $(CPPFLAGS) -Ieio $(CFLAGS) -c src/uv-unix.c -o src/uv-unix.o
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(CSTDFLAG) $(CPPFLAGS) -I$(S)/eio $(CFLAGS) -c $< -o $@
 
 src/uv-common.o: src/uv-common.c include/uv.h include/uv-unix.h
-	$(CC) $(CSTDFLAG) $(CPPFLAGS) $(CFLAGS) -c src/uv-common.c -o src/uv-common.o
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(CSTDFLAG) $(CPPFLAGS) $(CFLAGS) -c $< -o $@
 
 src/ev/ev.o: src/ev/ev.c
-	$(CC) $(CPPFLAGS) $(CFLAGS) -c src/ev/ev.c -o src/ev/ev.o -DEV_CONFIG_H=\"$(EV_CONFIG)\"
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@ -DEV_CONFIG_H=\"$(EV_CONFIG)\"
 
 
 EIO_CPPFLAGS += $(CPPFLAGS)
@@ -100,20 +104,9 @@ EIO_CPPFLAGS += -DEIO_STACKSIZE=65536
 EIO_CPPFLAGS += -D_GNU_SOURCE
 
 src/eio/eio.o: src/eio/eio.c
-	$(CC) $(EIO_CPPFLAGS) $(CFLAGS) -c src/eio/eio.c -o src/eio/eio.o
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(EIO_CPPFLAGS) $(CFLAGS) -c $< -o $@
 
 src/uv-eio.o: src/uv-eio.c
-	$(CC) $(CPPFLAGS) -Isrc/eio/ $(CSTDFLAG) $(CFLAGS) -c src/uv-eio.c -o src/uv-eio.o
-
-
-clean-platform:
-	-rm -f src/ares/*.o
-	-rm -f src/ev/*.o
-	-rm -f src/eio/*.o
-	-rm -rf test/run-tests.dSYM run-benchmarks.dSYM
-
-distclean-platform:
-	-rm -f src/ares/*.o
-	-rm -f src/ev/*.o
-	-rm -f src/eio/*.o
-	-rm -rf test/run-tests.dSYM run-benchmarks.dSYM
+	@$(call EE, compile: $@)
+	$(Q)$(CC) $(CPPFLAGS) -I$(S)/src/eio/ $(CSTDFLAG) $(CFLAGS) -c $< -o $@