Project import
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..e90eb51
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,107 @@
+#
+#    Copyright (c) 2010-2011 Nest, Inc.
+#    All rights reserved.
+#
+#    This document is the property of Nest. It is considered
+#    confidential and proprietary information.
+#
+#    This document may not be reproduced or transmitted in any form,
+#    in whole or in part, without the express written permission of
+#    Nest.
+#
+#    Description:
+#      This file is the make file for valgrind, an instrumentation
+#      framework for building dynamic analysis tools. It includes tools
+#      that can automatically detect many memory management and threading
+#      bugs, and profile programs in detail.
+#
+
+BuildConfigSpecialized	:= No
+
+include pre.mak
+
+PackageName		:= valgrind
+
+PackageExtension	:= tar.bz2
+PackageSeparator	:= -
+
+PackagePatchArgs	:= -p1
+
+PackageArchive		:= $(PackageName).$(PackageExtension)
+PackageSourceDir	:= $(PackageName)$(PackageSeparator)$(PackageVersion)
+
+PackageBuildMakefile	= $(call GenerateBuildPaths,Makefile)
+
+LicenseSourceFile	:= $(PackageSourceDir)/COPYING
+
+CleanPaths		+= $(PackageLicenseFile)
+
+all: $(PackageDefaultGoal)
+
+# Generate the package license contents.
+
+$(LicenseSourceFile): source
+
+$(PackageLicenseFile): $(LicenseSourceFile)
+	$(copy-result)
+
+# Extract the source from the archive and apply patches, if any.
+
+$(PackageSourceDir): $(PackageArchive) $(PackagePatchPaths)
+	$(expand-and-patch-package)
+
+# Prepare the sources.
+
+.PHONY: source
+source: | $(PackageSourceDir)
+
+# Patch the sources, if necessary.
+
+.PHONY: patch
+patch: source
+
+# Generate the package build makefile.
+
+$(PackageBuildMakefile): | $(PackageSourceDir) $(BuildDirectory) $(ResultDirectory)
+	$(Verbose)cd $(BuildDirectory) && \
+	$(CURDIR)/$(PackageSourceDir)/configure \
+	CC="$(CC)" CXX="$(CXX)" AR=$(AR) NM=$(NM) RANLIB=$(RANLIB) STRIP=$(STRIP) \
+	INSTALL="$(INSTALL) $(INSTALLFLAGS)" \
+	--build=$(HostTuple) \
+	--host=$(ValgrindTargetTuple) \
+	--prefix=/usr \
+	--sysconfdir=/etc \
+	--localstatedir=/var
+
+# Configure the source for building.
+
+.PHONY: configure
+configure: source $(PackageBuildMakefile)
+
+# Build the source.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+.PHONY: build
+build: configure
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+	all
+
+# Stage the build to a temporary installation area.
+#
+# We have to unset MAKEFLAGS since they confuse the package build otherwise.
+
+.PHONY: stage
+stage: build | $(ResultDirectory)
+	$(Verbose)unset MAKEFLAGS && \
+	$(MAKE) $(JOBSFLAG) -C $(BuildDirectory) \
+	DESTDIR=$(ResultDirectory) \
+	install
+
+clean:
+	$(Verbose)$(RM) $(RMFLAGS) -r $(PackageSourceDir)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(BuildDirectory)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory)
+
+include post.mak
diff --git a/valgrind.patches/valgrind-50.description b/valgrind.patches/valgrind-50.description
new file mode 100644
index 0000000..46153cd
--- /dev/null
+++ b/valgrind.patches/valgrind-50.description
@@ -0,0 +1 @@
+This patch fixes the fact that valgrind default suppression files are not conditioned based on whether they exist in the source directory or whether they are created anew in the build directory.
diff --git a/valgrind.patches/valgrind-50.patch b/valgrind.patches/valgrind-50.patch
new file mode 100644
index 0000000..d56b366
--- /dev/null
+++ b/valgrind.patches/valgrind-50.patch
@@ -0,0 +1,19 @@
+diff -aruN a/Makefile.in b/Makefile.in
+--- a/Makefile.in	2010-10-20 18:16:18.000000000 -0700
++++ b/Makefile.in	2010-11-05 09:25:40.041847746 -0700
+@@ -1088,7 +1088,14 @@
+ default.supp: $(DEFAULT_SUPP_FILES)
+ 	echo "# This is a generated file, composed of the following suppression rules:" > default.supp
+ 	echo "# " $(DEFAULT_SUPP_FILES) >> default.supp
+-	cat $(DEFAULT_SUPP_FILES) >> default.supp
++	for file in $(DEFAULT_SUPP_FILES); do \
++		if [ -r $(srcdir)/$$file ]; then \
++			path=$(srcdir)/$$file; \
++		else \
++			path=$(builddir)/$$file; \
++		fi; \
++		cat $$path >> default.supp; \
++	done
+ 
+ regtest: check
+ 	@PERL@ tests/vg_regtest $(TEST_TOOLS) $(TEST_EXP_TOOLS)
diff --git a/valgrind.tar.bz2 b/valgrind.tar.bz2
new file mode 100644
index 0000000..7dfc770
--- /dev/null
+++ b/valgrind.tar.bz2
Binary files differ
diff --git a/valgrind.url b/valgrind.url
new file mode 100644
index 0000000..2cf2787
--- /dev/null
+++ b/valgrind.url
@@ -0,0 +1 @@
+http://www.valgrind.org/downloads/valgrind-3.6.1.tar.bz2
diff --git a/valgrind.version b/valgrind.version
new file mode 100644
index 0000000..9575d51
--- /dev/null
+++ b/valgrind.version
@@ -0,0 +1 @@
+3.6.1