ports/95179: devel/ptmalloc doesn't include a header
pfgshield-freebsd at yahoo.com
pfgshield-freebsd at yahoo.com
Tue Jun 13 17:43:13 UTC 2006
Oops... almost forgot;
Since I updated it to version 2.0, it's better to bump the version number. I
used a link instead of copying again the shared library though.
diff -ruN ptmalloc.orig/Makefile ptmalloc/Makefile
--- ptmalloc.orig/Makefile Sun Jun 4 00:12:33 2006
+++ ptmalloc/Makefile Tue Jun 13 12:38:30 2006
@@ -6,18 +6,26 @@
# $FreeBSD: ports/devel/ptmalloc/Makefile,v 1.1 2004/12/14 02:18:24 grog Exp $
PORTNAME= ptmalloc
-PORTVERSION= 1.0
+PORTVERSION= 2.0
CATEGORIES= devel
MASTER_SITES= http://www.malloc.de/malloc/
-DISTNAME= ptmalloc
+DISTNAME= ${PORTNAME}2-current
MAINTAINER= grog at FreeBSD.org
COMMENT= Alternative malloc, performs better with threaded applications
+WRKSRC= ${WRKDIR}/${PORTNAME}2
+INSTALLS_SHLIB= yes
+
+post-patch:
+ @${REINPLACE_CMD} -e 's+-pthread+${PTHREAD_LIBS}+g ;' \
+ ${WRKSRC}/Makefile
do-install: all
- ${INSTALL_PROGRAM} ${WRKSRC}/ptmalloc.so ${PREFIX}/lib/libptmalloc.so.1
- ${INSTALL_PROGRAM} ${WRKSRC}/ptmalloc.so ${PREFIX}/lib/libptmalloc.so
- ${INSTALL_PROGRAM} ${WRKSRC}/libptmalloc.a ${PREFIX}/lib/libptmalloc.a
+ ${MKDIR} ${PREFIX}/include/ptmalloc
+ ${INSTALL_DATA} ${WRKSRC}/malloc.h ${PREFIX}/include/${PORTNAME}/malloc.h
+ ${INSTALL_PROGRAM} ${WRKSRC}/malloc.so ${PREFIX}/lib/libptmalloc.so
+ ${LN} -s ${WRKSRC}/malloc.so ${PREFIX}/lib/libptmalloc.so.2
+ ${INSTALL_PROGRAM} ${WRKSRC}/libmalloc.a ${PREFIX}/lib/libptmalloc.a
post-install:
@${ECHO_CMD}
diff -ruN ptmalloc.orig/distinfo ptmalloc/distinfo
--- ptmalloc.orig/distinfo Sun Jun 4 00:12:33 2006
+++ ptmalloc/distinfo Sun Jun 4 00:14:49 2006
@@ -1,3 +1,3 @@
-MD5 (ptmalloc.tar.gz) = 10b3fce4711eeada16726fd5e218309b
-SHA256 (ptmalloc.tar.gz) =
806761559619e37ee78477682dd4b38b861c173c4a7167c753ac6d1799a1af3d
-SIZE (ptmalloc.tar.gz) = 55961
+MD5 (ptmalloc2-current.tar.gz) = 37a0b6d757d272bbb1f8bf1a38fe3cb5
+SHA256 (ptmalloc2-current.tar.gz) =
8b9242a36d523a34d0a54782f35bb040cca0be543e838fd838279d70833c7fa2
+SIZE (ptmalloc2-current.tar.gz) = 78506
diff -ruN ptmalloc.orig/files/patch-Makefile ptmalloc/files/patch-Makefile
--- ptmalloc.orig/files/patch-Makefile Sun Jun 4 00:12:33 2006
+++ ptmalloc/files/patch-Makefile Sun Jun 4 00:52:40 2006
@@ -1,57 +1,45 @@
---- Makefile.orig Mon Dec 20 21:58:38 1999
-+++ Makefile Tue Dec 14 13:22:01 2004
-@@ -10,7 +10,7 @@
-
- OPT_FLAGS = -O #-g
- WARN_FLAGS = # -Wall
--SH_FLAGS = -shared
-+SH_FLAGS = -shared -fpic
-
- # Flags for the test programs
- T_FLAGS = -DUSE_MALLOC=1 -DMALLOC_HOOKS -DTEST=1
-@@ -27,6 +27,9 @@
- THR_FLAGS = -DUSE_PTHREADS=1 -DUSE_TSD_DATA_HACK -D_REENTRANT
- THR_LIBS = -lpthread
+--- Makefile.orig Sat Nov 6 07:32:00 2004
++++ Makefile Sun Jun 4 00:47:43 2006
+@@ -15,12 +15,12 @@
+ TAR_FLAGS = --numeric-owner --exclude "*~" --exclude "debian/tmp*"
+
+ #CC = /pkg/gcc-2.95.2-wg/bin/gcc
+-CC = cc
++CC ?= cc
+
+ SYS_FLAGS =
+-OPT_FLAGS = -g -O # -O2
++OPT_FLAGS = -O # -O2
+ WARN_FLAGS = #-Wall -Wstrict-prototypes
+-SH_FLAGS = -shared -fpic
++SH_FLAGS = -shared -fPIC
+
+ INC_FLAGS = -Isysdeps/generic
+
+@@ -40,13 +40,13 @@
+ RANLIB = ranlib
+
+ MALLOC_OBJ = malloc.o malloc-stats.o
+-LIB_MALLOC = libmalloc.a
++LIB_MALLOC = libmalloc.a malloc.so
+
+ T_SUF =
+ TESTS = t-test1$(T_SUF) t-test2$(T_SUF) \
+ tst-mallocstate$(T_SUF) tst-mstats$(T_SUF)
-+# Target libraries
-+LIBS= libptmalloc.a ptmalloc.so
-+
- RM = rm -f
+-CFLAGS = $(SYS_FLAGS) $(OPT_FLAGS) $(WARN_FLAGS) $(THR_FLAGS) $(INC_FLAGS)
++CFLAGS += $(SYS_FLAGS) $(OPT_FLAGS) $(WARN_FLAGS) $(THR_FLAGS) $(INC_FLAGS)
- # Don't need it for the Linux C library 6, see `glibc' target below.
-@@ -40,7 +43,9 @@
.c.o:
$(CC) -c $(CFLAGS) $<
-
--all: $(TESTS)
-+all: ${LIBS}
-+
-+tests: $(TESTS)
-
- shared: ptmalloc.so
-
-@@ -48,14 +53,14 @@
- $(CC) -c $(CFLAGS) $(M_FLAGS) $<
-
- ptmalloc.so: ptmalloc.c ptmalloc.h thread-m.h
-- $(CC) $(SH_FLAGS) $(CFLAGS) $(M_FLAGS) $< -o $@
-+ $(CC) $(SH_FLAGS) $(CFLAGS) $(M_FLAGS) ptmalloc.c -o $@
-
- again:
- $(RM) $(TESTS)
- $(MAKE) $(TESTS)
-
- clean:
-- $(RM) ptmalloc.o ptmalloc.so $(TESTS) core
-+ $(RM) ptmalloc.o ptmalloc.so $(TESTS) core lib*
-
- t-test1$(T_SUF): t-test1.c t-test.h thread-m.h $(MALLOC)
- $(CC) $(CFLAGS) $(T_FLAGS) t-test1.c $(MALLOC) $(THR_LIBS) -o $@
-@@ -129,3 +134,7 @@
- dist:
- cd ..; tar cf - $(DIST_FILES2:%=ptmalloc/%) | \
- gzip -9 >ptmalloc.tar.gz
+@@ -137,6 +137,10 @@
+ OPT_FLAGS='$(OPT_FLAGS)' THR_FLAGS='-DUSE_TSD_DATA_HACK' \
+ INC_FLAGS='-Isysdeps/pthread -Isysdeps/generic -I.' M_FLAGS='$(M_FLAGS)' \
+ malloc.so
+
+libptmalloc.a: ptmalloc.o
+ ar qcvf $@ ptmalloc.o
+ ranlib $@
+
+ sproc:
+ $(MAKE) THR_FLAGS='' THR_LIBS='' OPT_FLAGS='$(OPT_FLAGS)' CC='$(CC)' \
diff -ruN ptmalloc.orig/pkg-descr ptmalloc/pkg-descr
--- ptmalloc.orig/pkg-descr Sun Jun 4 00:12:33 2006
+++ ptmalloc/pkg-descr Sun Jun 4 01:19:56 2006
@@ -1,39 +1,19 @@
ptmalloc is the original version of the malloc that was later included
-in GNU libc. Under some circumsntaces, notably with pthreads and
-excessive calls to realloc, it performs significantly better than
-FreeBSD malloc. This version is *not* GPL or LGPL:
+in GNU libc. Under some circumstances, notably with pthreads and
+excessive calls to realloc, it can perform significantly better than
+FreeBSD malloc.
- Copyright (c) 1999 Wolfram Gloger
-
- Permission to use, copy, modify, distribute, and sell this software
- and its documentation for any purpose is hereby granted without fee,
- provided that (i) the above copyright notices and this permission
- notice appear in all copies of the software and related
- documentation, and (ii) the name of Wolfram Gloger may not be used
- in any advertising or publicity relating to the software.
-
- THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
- EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
- WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
- IN NO EVENT SHALL WOLFRAM GLOGER BE LIABLE FOR ANY SPECIAL,
- INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY
- DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
- WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY
- THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- PERFORMANCE OF THIS SOFTWARE.
+As aprt of GNU glibc this package is *also* available under the GNU LGPL,
+however when using the standalone package *only* the conditions
+spelled out in COPYRIGHT apply.
-This is not the latest version: it's older than the one in GNU libc.
There is a newer version, but it's still marked as "current snapshot".
-It's in /usr/ports/devel/ptmalloc-2/.
See the web site for more details: WWW: http://www.malloc.de/en/
-This package comes with no documentation beyond a README, which isn't
-worth installing. It appears that the GNU libc man page malloc(3)
-applies, but it's not included here for copyright reasons. There's
-nothing unusual about it. In particular, the section TUNING in
-FreeBSD malloc(3) does not apply.
+It appears that the GNU libc man page malloc(3) applies, but it's not
+included here for copyright reasons. There's nothing unusual about it.
+The section TUNING, in particular, does not apply in FreeBSD malloc(3)
This library uses the POSIX pthread_atfork() function which was not
committed to -CURRENT until 10 December 2004. See PR bin/68841 for
diff -ruN ptmalloc.orig/pkg-message ptmalloc/pkg-message
--- ptmalloc.orig/pkg-message Wed Dec 31 19:00:00 1969
+++ ptmalloc/pkg-message Sun Jun 4 01:16:02 2006
@@ -0,0 +1,19 @@
+Copyright (c) 2001-2004 Wolfram Gloger
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without fee,
+provided that (i) the above copyright notices and this permission
+notice appear in all copies of the software and related documentation,
+and (ii) the name of Wolfram Gloger may not be used in any advertising
+or publicity relating to the software.
+
+THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
+EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
+WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+IN NO EVENT SHALL WOLFRAM GLOGER BE LIABLE FOR ANY SPECIAL,
+INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY
+DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY
+OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THIS SOFTWARE.
diff -ruN ptmalloc.orig/pkg-plist ptmalloc/pkg-plist
--- ptmalloc.orig/pkg-plist Sun Jun 4 00:12:33 2006
+++ ptmalloc/pkg-plist Tue Jun 13 12:37:46 2006
@@ -1,3 +1,5 @@
+include/ptmalloc/malloc.h
+ at dirrm include/ptmalloc
lib/libptmalloc.a
lib/libptmalloc.so
-lib/libptmalloc.so.1
+lib/libptmalloc.so.2
Chiacchiera con i tuoi amici in tempo reale!
http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com
More information about the freebsd-ports-bugs
mailing list