Bug 252124

Summary: devel/dmalloc: update to 5.6.4
Product: Ports & Packages Reporter: mjl
Component: Individual Port(s)Assignee: Fernando Apesteguía <fernape>
Status: Closed FIXED    
Severity: Affects Only Me CC: diizzy, fernape
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
update devel/dmalloc to 5.6.4
mjl: maintainer-approval+
update devel/dmalloc to 5.6.5
mjl: maintainer-approval+
update devel/dmalloc to 5.6.5
mjl: maintainer-approval+
update devel/dmalloc to 5.6.5
mjl: maintainer-approval+
update devel/dmalloc to 5.6.5 none

Description mjl 2020-12-25 06:30:23 UTC
Created attachment 220906 [details]
update devel/dmalloc to 5.6.4

Update dmalloc to 5.6.4.  ChangeLog since 5.5.2:

Version 5.6.4 (12/24/2020):
	* Fixed shared libary creation.  Thanks to @ffontaine and Alex Suykov.
	* Fixed one more pointer arithmetic issue.  Thanks to aitap.
	* Better configuring of the pointer arithmetic type.
	* Fixed strndup macro detection... Again. Thanks to SkyOnce.

Version 5.6.3 (12/23/2020):
	* Fixed missing dmallocc.o <- dmalloc.h dependency.  Thanks to @ffontaine.
	* Fixed more %p usage and issues around pointer arithmetic.  Thanks to aitap.

Version 5.6.2 (12/17/2020):
	* Fixed bug with loc_snprintf use of va_args.  Thanks much to aitap.
	* Handle strndup being a macro.  Thanks much to aitap.
	* Renmaed the ERROR_ and DEBUG_ defines to DMALLOC_* to reduce OS overlap.
	* Fixed issues with cross-compiling and getpagesize.  Thanks to aitap.
	* Fixed problems with cross-compiling and printing of pointers.  Thanks to aitap.

Version 5.6.1 (11/24/2020):
	* Fixed the installdocs target.  Thanks to matthewluckie.

Version 5.6.0 (11/22/2020):
	* Implemented a snprintf to [hopefully] stop recursion.  Thanks to drok.
	* Added append_string and friends for better string output.
	* Fixed strndup handling when it is a macro.  Thanks to danielgora.
	* Fixed strndup configuration and handling in general.
	* Added better getenv handling.
	* Fixed issues around page-size detection and heap extension.
	* Added circleci to github.
	* Improved the test program output.
	* Added strnlen configuration and handling.
	* Moved to git on April 9, 2018.
Comment 1 Daniel Engberg freebsd_committer freebsd_triage 2020-12-26 03:23:29 UTC
PORTVERSION --> DISTVERSION
https://www.freebsd.org/doc/en/books/porters-handbook/book.html --> "Table 5.2. Package Naming Examples"

You can also possibly add GitHub as mirror site
https://github.com/j256/dmalloc/releases

Add
LICENSE_FILE=	${WRKSRC}/LICENSE.txt

CFLAGS= --> CFLAGS+= otherwise you'll override CFLAGS set by ports framework
https://github.com/j256/dmalloc/blob/master/LICENSE.txt

Best regards,
Daniel
Comment 2 Fernando Apesteguía freebsd_committer freebsd_triage 2020-12-27 18:21:19 UTC
Also, if possible,

 /tmp/252124/devel/dmalloc/files/patch-configure: patch was not generated using ``make makepatch''.  It is recommended to use ``make makepatch'' when you need to [re-]generate a patch to ensure proper patch format.
 /tmp/252124/devel/dmalloc/files/patch-Makefile.in: patch was not generated using ``make makepatch''.  It is recommended to use ``make makepatch'' when you need to [re-]generate a patch to ensure proper patch format.

Thanks!
Comment 3 mjl 2021-02-15 03:43:35 UTC
Created attachment 222452 [details]
update devel/dmalloc to 5.6.5

This patch addresses comments #1 and #2 on the PR.  It also silences dmalloc logging a warning when free(NULL) which is a disk filling service as freeaddrinfo in freebsd's libc can call free on a NULL pointer, by design:

https://svnweb.freebsd.org/base/head/lib/libc/net/getaddrinfo.c?r1=311102&r2=323597

It also updates to 5.6.5 which is a documentation fix:

https://github.com/j256/dmalloc/releases/tag/dmalloc_release_5_6_5

There are no problems reported by portlint.
Comment 4 Fernando Apesteguía freebsd_committer freebsd_triage 2021-02-16 08:22:34 UTC
We are almost there:

Q/A: devel/dmalloc/pkg-plist: [16]: enumerating info files in the plist is deprecated in favor of adding info files into the Makefile using the INFO macro.

# PORTNAME block
PORTNAME
DISTVERSION
CATEGORIES
MASTER_SITES

# Maintainer block
MAINTAINER
COMMENT

# License block
LICENSE
LICENSE_FILE

# USES block
+USES
+USE_LDCONFIG

# Configure block
GNU_CONFIGURE
+GNU_CONFIGURE_PREFIX
CONFIGURE_ARGS
-GNU_CONFIGURE_PREFIX
CONFIGURE_ENV

-CFLAGS

-USES
-USE_LDCONFIG

# Make block
MAKE_JOBS_UNSAFE
ALL_TARGET
INSTALL_TARGET

# CFLAGS/CXXFLAGS/LDFLAGS block
+CFLAGS

# Options definitions
OPTIONS_DEFINE

# Options helpers
DOCS_INSTALL_TARGET

Would you update the patch?
Comment 5 mjl 2021-02-16 20:40:58 UTC
Created attachment 222502 [details]
update devel/dmalloc to 5.6.5

I've modified the Makefile to install the info file in @infodir@ and adjusted the ordering of the various blocks as requested.  I used my best judgement as to where the INFO block goes.  cvs, binutils, and autoconf seem to put INFO before the CONFIGURE block and after the USES block.
Comment 6 Fernando Apesteguía freebsd_committer freebsd_triage 2021-02-17 12:00:29 UTC
(In reply to mjl from comment #5)

Something's not right. Does it build for you?

===========================================================================
=>> Recording filesystem state for prestage... done
=======================<phase: stage          >============================
===>  Staging for dmalloc-5.6.5
===>   dmalloc-5.6.5 depends on executable: indexinfo - found
===>   Generating temporary packing list
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/include
install  -m 0644 dmalloc.h /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/include
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
install  -m 0644 libdmallocth.so.1 /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
install  -m 0644 libdmallocthcxx.so.1 /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
install  -m 0644 libdmallocthcxx.a /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
install  -m 0644 libdmallocth.a /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
install  -m 0644 libdmallocxx.so.1 /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
install  -m 0644 libdmallocxx.a /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
install  -m 0644 libdmalloc.so.1 /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
install  -m 0644 libdmalloc.a /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/lib
./mkinstalldirs /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/bin
install  -m 0644 dmalloc /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/bin
Enter 'make installdocs' to install INSTALL.txt dmalloc.html dmalloc.info in /wrkdirs/usr/ports/devel/dmalloc/work/stage/usr/local/share/doc/dmalloc
rm -f dmalloc.info dmalloc.info.t
makeinfo -o dmalloc.info.t --fill-column=100 --no-split ./dmalloc.texi
/bin/sh: makeinfo: not found
*** Error code 127

Stop.
make[1]: stopped in /wrkdirs/usr/ports/devel/dmalloc/work/dmalloc-5.6.5
*** Error code 1
Comment 7 mjl 2021-02-17 19:13:55 UTC
Created attachment 222533 [details]
update devel/dmalloc to 5.6.5

this patch adds depends to build documentation.
Comment 8 mjl 2021-02-18 01:49:10 UTC
Created attachment 222544 [details]
update devel/dmalloc to 5.6.5

I modified the patch further so that the BUILD_DEPENDS and INFO now respect the DOCS option.
Comment 9 Fernando Apesteguía freebsd_committer freebsd_triage 2021-02-18 08:00:21 UTC
Committed,

Thanks!
Comment 10 commit-hook freebsd_committer freebsd_triage 2021-02-18 08:01:09 UTC
A commit references this bug:

Author: fernape
Date: Thu Feb 18 08:00:08 UTC 2021
New revision: 565910
URL: https://svnweb.freebsd.org/changeset/ports/565910

Log:
  devel/dmalloc: update to 5.6.4

  Add LICENSE, regerate multiple patches, reorder variables, etc.

  Accumulated ChangeLog:

  Version 5.6.4 (12/24/2020):
  	* Fixed shared libary creation.  Thanks to @ffontaine and Alex Suykov.
  	* Fixed one more pointer arithmetic issue.  Thanks to aitap.
  	* Better configuring of the pointer arithmetic type.
  	* Fixed strndup macro detection... Again. Thanks to SkyOnce.

  Version 5.6.3 (12/23/2020):
  	* Fixed missing dmallocc.o <- dmalloc.h dependency.  Thanks to @ffontaine.
  	* Fixed more %p usage and issues around pointer arithmetic.  Thanks to aitap.

  Version 5.6.2 (12/17/2020):
  	* Fixed bug with loc_snprintf use of va_args.  Thanks much to aitap.
  	* Handle strndup being a macro.  Thanks much to aitap.
  	* Renmaed the ERROR_ and DEBUG_ defines to DMALLOC_* to reduce OS overlap.
  	* Fixed issues with cross-compiling and getpagesize.  Thanks to aitap.
  	* Fixed problems with cross-compiling and printing of pointers.  Thanks to aitap.

  Version 5.6.1 (11/24/2020):
  	* Fixed the installdocs target.  Thanks to matthewluckie.

  Version 5.6.0 (11/22/2020):
  	* Implemented a snprintf to [hopefully] stop recursion.  Thanks to drok.
  	* Added append_string and friends for better string output.
  	* Fixed strndup handling when it is a macro.  Thanks to danielgora.
  	* Fixed strndup configuration and handling in general.
  	* Added better getenv handling.
  	* Fixed issues around page-size detection and heap extension.
  	* Added circleci to github.
  	* Improved the test program output.
  	* Added strnlen configuration and handling.
  	* Moved to git on April 9, 2018.

  PR:	252124
  Submitted by:	mjl@luckie.org.nz (maintainer)

Changes:
  head/devel/dmalloc/Makefile
  head/devel/dmalloc/distinfo
  head/devel/dmalloc/files/patch-Makefile.in
  head/devel/dmalloc/files/patch-configure
  head/devel/dmalloc/files/patch-settings.dist
  head/devel/dmalloc/pkg-plist