aboutsummaryrefslogtreecommitdiff
path: root/devel/ccache
diff options
context:
space:
mode:
authorEmanuel Haupt <ehaupt@FreeBSD.org>2010-07-31 10:48:26 +0000
committerEmanuel Haupt <ehaupt@FreeBSD.org>2010-07-31 10:48:26 +0000
commit9de9547ccf4f23f8e091adef3895939ab4427fe1 (patch)
treee4839a7c40470eeffb76f39456e2d23b7440665b /devel/ccache
parente87274f2f7ecac39933c36157ba167aee5b066f5 (diff)
downloadports-9de9547ccf4f23f8e091adef3895939ab4427fe1.tar.gz
ports-9de9547ccf4f23f8e091adef3895939ab4427fe1.zip
Notes
Diffstat (limited to 'devel/ccache')
-rw-r--r--devel/ccache/Makefile22
-rw-r--r--devel/ccache/distinfo6
-rw-r--r--devel/ccache/files/patch-ccache.119
-rw-r--r--devel/ccache/files/patch-ccache.c17
-rw-r--r--devel/ccache/files/patch-ccache.yo14
-rw-r--r--devel/ccache/files/patch-md4148
-rw-r--r--devel/ccache/files/patch-util.c25
-rw-r--r--devel/ccache/files/world-c++.in2
-rw-r--r--devel/ccache/files/world-cc.in2
9 files changed, 15 insertions, 240 deletions
diff --git a/devel/ccache/Makefile b/devel/ccache/Makefile
index 99483e093ee7..cd0a31417fe3 100644
--- a/devel/ccache/Makefile
+++ b/devel/ccache/Makefile
@@ -1,27 +1,27 @@
# New ports collection makefile for: ccache
# Date created: 31/03/2002
-# Whom: Dominic Marks <d.marks@student.umist.ac.uk>
+# Whom: Dominic Marks <d.marks@student.umist.ac.uk>
#
# $FreeBSD$
#
PORTNAME= ccache
-PORTVERSION= 2.4
-PORTREVISION= 9
+PORTVERSION= 3.0.1
CATEGORIES= devel
-MASTER_SITES= http://samba.org/ftp/ccache/
+MASTER_SITES= http://samba.org/ftp/ccache/ CRITICAL
MAINTAINER= ehaupt@FreeBSD.org
COMMENT= A tool to minimize the compile time of C/C++ programs
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKSRC}/COPYING
+
GNU_CONFIGURE= yes
MAN1= ccache.1
PLIST_FILES= bin/ccache
-PORTDOCS= index.html \
- ccache-man.html \
- ${HOWTO}
+PORTDOCS= *
.if !defined(WITHOUT_COMPILER_LINKS)
HOWTO= ccache-howto-freebsd.txt
@@ -34,9 +34,9 @@ SUB_FILES= ${HOWTO} pkg-message
.if !defined(WITHOUT_COMPILER_LINKS)
.if ${ARCH}=="i386"
-CCACHE_COMPILERS+= icc icpc
+CCACHE_COMPILERS+= icc icpc
.endif
-GNU_COMPILERS+= 34 42 43 44 -ooo
+GNU_COMPILERS+= 34 42 43 44 45 46
CCACHE_COMPILERS+= cc c++ gcc g++ ${GNU_COMPILERS:S|^|gcc|} ${GNU_COMPILERS:S|^|g++|}
.if defined(EXTRA_COMPILERS)
CCACHE_COMPILERS+= ${EXTRA_COMPILERS}
@@ -78,9 +78,7 @@ do-install:
.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
-.for i in ${PORTDOCS:S/${HOWTO}//}
- ${INSTALL_DATA} ${WRKSRC}/web/${i} ${DOCSDIR}
-.endfor
+ ${INSTALL_DATA} ${WRKSRC}/manual.html ${DOCSDIR}
.if !defined(WITHOUT_COMPILER_LINKS)
${INSTALL_DATA} ${WRKDIR}/${HOWTO} ${DOCSDIR}
.endif
diff --git a/devel/ccache/distinfo b/devel/ccache/distinfo
index 412901ff16d3..7311ca69a988 100644
--- a/devel/ccache/distinfo
+++ b/devel/ccache/distinfo
@@ -1,3 +1,3 @@
-MD5 (ccache-2.4.tar.gz) = 73c1ed1e767c1752dd0f548ec1e66ce7
-SHA256 (ccache-2.4.tar.gz) = 435f862ca5168c346f5aa9e242174bbf19a5abcaeecfceeac2f194558827aaa0
-SIZE (ccache-2.4.tar.gz) = 86363
+MD5 (ccache-3.0.1.tar.gz) = 15f2449899d9e8dc3aff6b86f97ab63e
+SHA256 (ccache-3.0.1.tar.gz) = f54ca163d6ee53e436a50b726418ca49d1d55d80ab327cc7a9644776cf9a9820
+SIZE (ccache-3.0.1.tar.gz) = 264992
diff --git a/devel/ccache/files/patch-ccache.1 b/devel/ccache/files/patch-ccache.1
deleted file mode 100644
index 83addd79e9d9..000000000000
--- a/devel/ccache/files/patch-ccache.1
+++ /dev/null
@@ -1,19 +0,0 @@
---- ccache.1.orig Mon Sep 13 06:38:30 2004
-+++ ccache.1 Tue Nov 15 14:59:46 2005
-@@ -234,6 +234,16 @@
- incorrect setting of this debug info rarely causes problems\&. If you
- strike problems with gdb not using the correct directory then enable
- this option\&.
-+.IP
-+.IP "\fBCCACHE_NOHASH_SIZE_MTIME\fP"
-+This tells ccache to not hash the real compiler's size and modification
-+time. Normally this is the mechanism to detect compiler upgrades.
-+There are situations however, where even though the compiler's size or
-+modification time has changed you can safely use the cached objects
-+(e.g. if as part of your build system the compiler is built as well
-+and the compiler's source has not changed; or if the compiler has only
-+changes that do not affect code generation). Use this feature only if
-+you know what you are doing.
- .IP
- .IP "\fBCCACHE_UNIFY\fP"
- If you set the environment variable CCACHE_UNIFY
diff --git a/devel/ccache/files/patch-ccache.c b/devel/ccache/files/patch-ccache.c
deleted file mode 100644
index caba042f50c0..000000000000
--- a/devel/ccache/files/patch-ccache.c
+++ /dev/null
@@ -1,17 +0,0 @@
---- ccache.c.orig 2004/09/13 10:19:06 1.96
-+++ ccache.c 2005/11/24 21:54:09 1.98
-@@ -331,8 +331,12 @@
- hash_string(str_basename(args->argv[0]));
- }
-
-- hash_int(st.st_size);
-- hash_int(st.st_mtime);
-+ if (getenv("CCACHE_HASH_COMPILER")) {
-+ hash_file(args->argv[0]);
-+ } else if (!getenv("CCACHE_NOHASH_SIZE_MTIME")) {
-+ hash_int(st.st_size);
-+ hash_int(st.st_mtime);
-+ }
-
- /* possibly hash the current working directory */
- if (getenv("CCACHE_HASHDIR")) {
diff --git a/devel/ccache/files/patch-ccache.yo b/devel/ccache/files/patch-ccache.yo
deleted file mode 100644
index 626f75610499..000000000000
--- a/devel/ccache/files/patch-ccache.yo
+++ /dev/null
@@ -1,14 +0,0 @@
---- ccache.yo.orig 2004/09/10 05:05:14 1.26
-+++ ccache.yo 2005/11/24 21:54:09 1.27
-@@ -203,6 +203,11 @@
- strike problems with gdb not using the correct directory then enable
- this option.
-
-+dit(bf(CCACHE_HASH_COMPILER)) This tells ccache to hash binary of the
-+compiler instead of hashing just its size and mtime. This is very
-+slightly slower, but makes copes better with compiler upgrades during
-+a build bootstrapping process.
-+
- dit(bf(CCACHE_UNIFY)) If you set the environment variable CCACHE_UNIFY
- then ccache will use the C/C++ unifier when hashing the pre-processor
- output if -g is not used in the compile. The unifier is slower than a
diff --git a/devel/ccache/files/patch-md4 b/devel/ccache/files/patch-md4
deleted file mode 100644
index 7e9ff7339167..000000000000
--- a/devel/ccache/files/patch-md4
+++ /dev/null
@@ -1,148 +0,0 @@
---- ccache.h.orig Wed Sep 8 21:30:40 2004
-+++ ccache.h Wed Sep 8 21:31:53 2004
-@@ -65,14 +65,14 @@
-
- typedef unsigned uint32;
-
--#include "mdfour.h"
-+#include <md4.h>
-
- void hash_start(void);
- void hash_string(const char *s);
- void hash_int(int x);
- void hash_file(const char *fname);
- char *hash_result(void);
--void hash_buffer(const char *s, int len);
-+void hash_buffer(const unsigned char *s, unsigned int len);
-
- void cc_log(const char *format, ...);
- void fatal(const char *msg);
---- hash.c.orig 2004-09-13 12:38:30.000000000 +0200
-+++ hash.c 2009-07-21 23:37:00.000000000 +0200
-@@ -20,17 +20,22 @@
- */
-
- #include "ccache.h"
-+#include <sys/types.h>
-+#include <sys/mman.h>
-+#include <sys/stat.h>
-
--static struct mdfour md;
-+static MD4_CTX md;
-+static off_t totalN;
-
--void hash_buffer(const char *s, int len)
-+void hash_buffer(const unsigned char *s, unsigned int len)
- {
-- mdfour_update(&md, (unsigned char *)s, len);
-+ totalN += len;
-+ MD4Update(&md, s, len);
- }
-
- void hash_start(void)
- {
-- mdfour_begin(&md);
-+ MD4Init(&md);
- }
-
- void hash_string(const char *s)
-@@ -46,35 +51,44 @@
- /* add contents of a file to the hash */
- void hash_file(const char *fname)
- {
-- char buf[1024];
-- int fd, n;
-+ char *buf;
-+ int fd;
-+ struct stat stats;
-
- fd = open(fname, O_RDONLY|O_BINARY);
- if (fd == -1) {
- cc_log("Failed to open %s\n", fname);
-- fatal("hash_file");
-+ fatal(__FUNCTION__);
- }
-
-- while ((n = read(fd, buf, sizeof(buf))) > 0) {
-- hash_buffer(buf, n);
-- }
-+ if (fstat(fd, &stats) != 0) {
-+ cc_log("Failed to fstat the opened %s (descriptor %d)\n",
-+ fname, fd);
-+ close(fd);
-+ fatal(__FUNCTION__);
-+ }
-+ if( stats.st_size == 0 )
-+ buf = NULL;
-+ else {
-+ buf = mmap(NULL, stats.st_size, PROT_READ, MAP_PRIVATE, fd, 0);
-+ if (buf == MAP_FAILED) {
-+ cc_log("Failed to mmap %s\n", fname);
-+ close(fd);
-+ fatal(__FUNCTION__);
-+ }
-+ }
-+
-+ hash_buffer(buf, stats.st_size);
- close(fd);
- }
-
- /* return the hash result as a static string */
- char *hash_result(void)
- {
-- unsigned char sum[16];
- static char ret[53];
-- int i;
-
-- hash_buffer(NULL, 0);
-- mdfour_result(&md, sum);
-+ MD4End(&md, ret);
-
-- for (i=0;i<16;i++) {
-- sprintf(&ret[i*2], "%02x", (unsigned)sum[i]);
-- }
-- sprintf(&ret[i*2], "-%u", (unsigned)md.totalN);
--
-+ snprintf(ret + 32, sizeof ret - 32, "-%lu", (unsigned long)totalN);
- return ret;
- }
---- unify.c.orig Wed Sep 8 21:36:41 2004
-+++ unify.c Wed Sep 8 21:37:20 2004
-@@ -104,13 +104,12 @@
- hash_buffer((char *)buf, len);
- len = 0;
- }
-- hash_buffer(NULL, 0);
- return;
- }
-
- buf[len++] = c;
-- if (len == 64) {
-- hash_buffer((char *)buf, len);
-+ if (len == sizeof buf) {
-+ hash_buffer((char *)buf, sizeof buf);
- len = 0;
- }
- }
---- Makefile.in.orig Mon Sep 6 09:04:22 2004
-+++ Makefile.in Wed Sep 8 21:41:00 2004
-@@ -11,16 +11,16 @@
- CFLAGS=@CFLAGS@ -I.
- EXEEXT=@EXEEXT@
-
--OBJS= ccache.o mdfour.o hash.o execute.o util.o args.o stats.o \
-+OBJS= ccache.o hash.o execute.o util.o args.o stats.o \
- cleanup.o snprintf.o unify.o
--HEADERS = ccache.h mdfour.h
-+HEADERS = ccache.h
-
- all: ccache$(EXEEXT)
-
- docs: ccache.1 web/ccache-man.html
-
- ccache$(EXEEXT): $(OBJS) $(HEADERS)
-- $(CC) $(CFLAGS) -o $@ $(OBJS)
-+ $(CC) $(CFLAGS) -o $@ $(OBJS) -lmd
-
- ccache.1: ccache.yo
- -yodl2man -o ccache.1 ccache.yo
diff --git a/devel/ccache/files/patch-util.c b/devel/ccache/files/patch-util.c
deleted file mode 100644
index 58b76d94f35c..000000000000
--- a/devel/ccache/files/patch-util.c
+++ /dev/null
@@ -1,25 +0,0 @@
-$MirOS: ports/devel/ccache/patches/patch-util_c,v 1.1 2008/10/05 17:03:37 tg Exp $
-
- Very interesting bug: tries to read “size” bytes
- from “ptr” (of size “oldsize”) while copying to
- “p2” (of size “size”), instead of “oldsize” bytes;
- with mmap malloc, jemalloc, and possibly omalloc,
- the additional RAM needed is not always in core…
-
---- util.c.orig Mon Sep 13 10:38:08 2004
-+++ util.c Sun Oct 5 16:58:39 2008
-@@ -187,13 +187,9 @@ void *x_realloc(void *ptr, size_t size)
- {
- void *p2;
- if (!ptr) return x_malloc(size);
-- p2 = malloc(size);
-+ p2 = realloc(ptr, size);
- if (!p2) {
- fatal("out of memory in x_realloc");
-- }
-- if (ptr) {
-- memcpy(p2, ptr, size);
-- free(ptr);
- }
- return p2;
- }
diff --git a/devel/ccache/files/world-c++.in b/devel/ccache/files/world-c++.in
index d6933ff5c33b..b7d97d8ec808 100644
--- a/devel/ccache/files/world-c++.in
+++ b/devel/ccache/files/world-c++.in
@@ -1,4 +1,4 @@
#!/bin/sh
unset CCACHE_PATH
-export CCACHE_HASH_COMPILER
+export CCACHE_COMPILERCHECK=content
exec %%PREFIX%%/%%CCLINKDIR%%/c++ "$@"
diff --git a/devel/ccache/files/world-cc.in b/devel/ccache/files/world-cc.in
index bb2f8162ac8c..e81d1432d613 100644
--- a/devel/ccache/files/world-cc.in
+++ b/devel/ccache/files/world-cc.in
@@ -1,4 +1,4 @@
#!/bin/sh
unset CCACHE_PATH
-export CCACHE_HASH_COMPILER
+export CCACHE_COMPILERCHECK=content
exec %%PREFIX%%/%%CCLINKDIR%%/cc "$@"