Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Feb 2013 21:51:38 +0100
From:      Christoph Mallon <christoph.mallon@gmx.de>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/176035: [PATCH] Improve and correct CRLF handling in ports
Message-ID:  <E1U50Li-0002rA-Jx@rotluchs.lokal>
Resent-Message-ID: <201302112100.r1BL00XM094149@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         176035
>Category:       ports
>Synopsis:       [PATCH] Improve and correct CRLF handling in ports
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Mon Feb 11 21:00:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Christoph Mallon
>Release:        
>Organization:
>Environment:


	
>Description:
- licenses: Turn CRLF into LF.
- Mk: Do not try to expand an unset variable when showing the message for DOS to Unix conversion.
- Mk: Use a single sed/find invocation for DOS to Unix conversion.
- Mk: Use PATCH_WRKSRC instead of WRKSRC for DOS to Unix conversion.
- Mk: Allow both name patterns (no slash) and qualified names (with slash) at once in DOS to Unix conversion.
- jasperserver: Use plain USE_DOS2UNIX since it uses PATCH_WRKSRC.
- all: Use plain USE_DOS2UNIX instead of DOS2UNIX_REGEX.
- Mk: Remove DOS2UNIX_REGEX.
- all: Remove manual CRLF conversion for files, which do not contain CRLF.
- all: Use USE_DOS2UNIX instead of manual CRLF conversion.
	
>How-To-Repeat:
	
>Fix:
Please apply the patches.

--- 0001-licenses-Turn-CRLF-into-LF.patch begins here ---
>From e45d55993116b23974f9950de01ac0aa157f4fe7 Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Sun, 10 Feb 2013 22:11:41 +0100
Subject: [PATCH 01/10] licenses: Turn CRLF into LF.

---
 Templates/Licenses/OFL | 194 ++++++++++++++++++++++++-------------------------
 1 file changed, 97 insertions(+), 97 deletions(-)

diff --git a/Templates/Licenses/OFL b/Templates/Licenses/OFL
index f1a20ac..33f3666 100644
--- a/Templates/Licenses/OFL
+++ b/Templates/Licenses/OFL
@@ -1,97 +1,97 @@
-Copyright (c) <dates>, <Copyright Holder> (<URL|email>),
-with Reserved Font Name <Reserved Font Name>.
-Copyright (c) <dates>, <additional Copyright Holder> (<URL|email>),
-with Reserved Font Name <additional Reserved Font Name>.
-Copyright (c) <dates>, <additional Copyright Holder> (<URL|email>).
-
-This Font Software is licensed under the SIL Open Font License, Version 1.1.
-This license is copied below, and is also available with a FAQ at:
-http://scripts.sil.org/OFL
-
-
------------------------------------------------------------
-SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
------------------------------------------------------------
-
-PREAMBLE
-The goals of the Open Font License (OFL) are to stimulate worldwide
-development of collaborative font projects, to support the font creation
-efforts of academic and linguistic communities, and to provide a free and
-open framework in which fonts may be shared and improved in partnership
-with others.
-
-The OFL allows the licensed fonts to be used, studied, modified and
-redistributed freely as long as they are not sold by themselves. The
-fonts, including any derivative works, can be bundled, embedded, 
-redistributed and/or sold with any software provided that any reserved
-names are not used by derivative works. The fonts and derivatives,
-however, cannot be released under any other type of license. The
-requirement for fonts to remain under this license does not apply
-to any document created using the fonts or their derivatives.
-
-DEFINITIONS
-"Font Software" refers to the set of files released by the Copyright
-Holder(s) under this license and clearly marked as such. This may
-include source files, build scripts and documentation.
-
-"Reserved Font Name" refers to any names specified as such after the
-copyright statement(s).
-
-"Original Version" refers to the collection of Font Software components as
-distributed by the Copyright Holder(s).
-
-"Modified Version" refers to any derivative made by adding to, deleting,
-or substituting -- in part or in whole -- any of the components of the
-Original Version, by changing formats or by porting the Font Software to a
-new environment.
-
-"Author" refers to any designer, engineer, programmer, technical
-writer or other person who contributed to the Font Software.
-
-PERMISSION & CONDITIONS
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of the Font Software, to use, study, copy, merge, embed, modify,
-redistribute, and sell modified and unmodified copies of the Font
-Software, subject to the following conditions:
-
-1) Neither the Font Software nor any of its individual components,
-in Original or Modified Versions, may be sold by itself.
-
-2) Original or Modified Versions of the Font Software may be bundled,
-redistributed and/or sold with any software, provided that each copy
-contains the above copyright notice and this license. These can be
-included either as stand-alone text files, human-readable headers or
-in the appropriate machine-readable metadata fields within text or
-binary files as long as those fields can be easily viewed by the user.
-
-3) No Modified Version of the Font Software may use the Reserved Font
-Name(s) unless explicit written permission is granted by the corresponding
-Copyright Holder. This restriction only applies to the primary font name as
-presented to the users.
-
-4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
-Software shall not be used to promote, endorse or advertise any
-Modified Version, except to acknowledge the contribution(s) of the
-Copyright Holder(s) and the Author(s) or with their explicit written
-permission.
-
-5) The Font Software, modified or unmodified, in part or in whole,
-must be distributed entirely under this license, and must not be
-distributed under any other license. The requirement for fonts to
-remain under this license does not apply to any document created
-using the Font Software.
-
-TERMINATION
-This license becomes null and void if any of the above conditions are
-not met.
-
-DISCLAIMER
-THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
-OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
-COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
-DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
-OTHER DEALINGS IN THE FONT SOFTWARE.
+Copyright (c) <dates>, <Copyright Holder> (<URL|email>),
+with Reserved Font Name <Reserved Font Name>.
+Copyright (c) <dates>, <additional Copyright Holder> (<URL|email>),
+with Reserved Font Name <additional Reserved Font Name>.
+Copyright (c) <dates>, <additional Copyright Holder> (<URL|email>).
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+http://scripts.sil.org/OFL
+
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
-- 
1.8.1.3
--- 0001-licenses-Turn-CRLF-into-LF.patch ends here ---

--- dummy1 begins here ---
dummy file, because GNATS damages every other patch
--- dummy1 ends here ---

--- 0002-Mk-Do-not-try-to-expand-an-unset-variable-when-showi.patch begins here ---
>From fa2ef399ed80008d47d45957e227a70eaad74e5b Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 14:48:49 +0100
Subject: [PATCH 02/10] Mk: Do not try to expand an unset variable when showing
 the message for DOS to Unix conversion.

---
 Mk/bsd.port.mk | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index bc4fbdd..b3d52e8 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -3616,12 +3616,11 @@ do-extract:
 .if !target(patch-dos2unix)
 patch-dos2unix:
 .if defined(USE_DOS2UNIX)
+	@${ECHO_MSG} "===>  Converting DOS text files to UNIX text files"
 .if ${USE_DOS2UNIX:U}=="YES"
-	@${ECHO_MSG} "===>   Converting DOS text files to UNIX text files"
 	@${FIND} -E ${WRKSRC} -type f -iregex '${DOS2UNIX_REGEX}' -print0 | \
 			${XARGS} -0 ${REINPLACE_CMD} -i '' -e 's/
$$//'
 .else
-	@${ECHO_MSG} "===>   Converting DOS text file to UNIX text file: ${f}"
 .if ${USE_DOS2UNIX:M*/*}
 .for f in ${USE_DOS2UNIX}
 	@${REINPLACE_CMD} -i '' -e 's/
$$//' ${WRKSRC}/${f}
-- 
1.8.1.3
--- 0002-Mk-Do-not-try-to-expand-an-unset-variable-when-showi.patch ends here ---

--- dummy2 begins here ---
dummy file, because GNATS damages every other patch
--- dummy2 ends here ---

--- 0003-Mk-Use-a-single-sed-find-invocation-for-DOS-to-Unix-.patch begins here ---
>From 98e45b8b2fb4d387b82280d2ca99ce8c43fc95a7 Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 15:09:26 +0100
Subject: [PATCH 03/10] Mk: Use a single sed/find invocation for DOS to Unix
 conversion.

---
 Mk/bsd.port.mk | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index b3d52e8..30a4eaf 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -3622,14 +3622,10 @@ patch-dos2unix:
 			${XARGS} -0 ${REINPLACE_CMD} -i '' -e 's/
$$//'
 .else
 .if ${USE_DOS2UNIX:M*/*}
-.for f in ${USE_DOS2UNIX}
-	@${REINPLACE_CMD} -i '' -e 's/
$$//' ${WRKSRC}/${f}
-.endfor
+	@(cd "${WRKSRC}"; ${REINPLACE_CMD} -i '' -e 's/
$$//' ${USE_DOS2UNIX:M*/*})
 .else
-.for f in ${USE_DOS2UNIX}
-	@${FIND} ${WRKSRC} -type f -name '${f}' -print0 | \
+	@${FIND} ${WRKSRC} -type f \( ${USE_DOS2UNIX:N*/*:C#.*#-name '&' -or#} -false \) -print0 | \
 			${XARGS} -0 ${REINPLACE_CMD} -i '' -e 's/
$$//'
-.endfor
 .endif
 .endif
 .else
-- 
1.8.1.3
--- 0003-Mk-Use-a-single-sed-find-invocation-for-DOS-to-Unix-.patch ends here ---

--- dummy3 begins here ---
dummy file, because GNATS damages every other patch
--- dummy3 ends here ---

--- 0004-Mk-Use-PATCH_WRKSRC-instead-of-WRKSRC-for-DOS-to-Uni.patch begins here ---
>From aa3f8bbdb3adc601bd81858db5f619f5ac3e4c8a Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 15:11:00 +0100
Subject: [PATCH 04/10] Mk: Use PATCH_WRKSRC instead of WRKSRC for DOS to Unix
 conversion.

DOS to Unix conversion is a patch pass, so PATCH_WRKSRC is more logical than WRKSRC.
For all current users of USE_DOS2UNIX both are the same, so there is no change of current behaviour.
---
 Mk/bsd.port.mk | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index 30a4eaf..a58ef14 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -309,9 +309,10 @@ FreeBSD_MAINTAINER=	portmgr@FreeBSD.org
 #				  for compression.
 # USE_MAKESELF		- If set, this port distfile uses makeself, not tar w/[bg]zip
 #				  for compression.
-# USE_DOS2UNIX	- If set to "YES", remove the ^M from all files
-#				  under ${WRKSRC}. If set to a string, remove in all
-#				  files under ${WRKSRC} with one of these names the ^Ms.
+# USE_DOS2UNIX		- If set to "YES", remove the ^M from all files under
+#			  ${PATCH_WRKSRC}. If set to a string, remove in all
+#			  files under ${PATCH_WRKSRC} with one of these names
+#			  the ^Ms.
 # DOS2UNIX_REGEX
 #				- Limit the ^M removal to files which name matches
 #				  the regular expression.
@@ -3618,13 +3619,13 @@ patch-dos2unix:
 .if defined(USE_DOS2UNIX)
 	@${ECHO_MSG} "===>  Converting DOS text files to UNIX text files"
 .if ${USE_DOS2UNIX:U}=="YES"
-	@${FIND} -E ${WRKSRC} -type f -iregex '${DOS2UNIX_REGEX}' -print0 | \
+	@${FIND} -E ${PATCH_WRKSRC} -type f -iregex '${DOS2UNIX_REGEX}' -print0 | \
 			${XARGS} -0 ${REINPLACE_CMD} -i '' -e 's/
$$//'
 .else
 .if ${USE_DOS2UNIX:M*/*}
-	@(cd "${WRKSRC}"; ${REINPLACE_CMD} -i '' -e 's/
$$//' ${USE_DOS2UNIX:M*/*})
+	@(cd "${PATCH_WRKSRC}"; ${REINPLACE_CMD} -i '' -e 's/
$$//' ${USE_DOS2UNIX:M*/*})
 .else
-	@${FIND} ${WRKSRC} -type f \( ${USE_DOS2UNIX:N*/*:C#.*#-name '&' -or#} -false \) -print0 | \
+	@${FIND} ${PATCH_WRKSRC} -type f \( ${USE_DOS2UNIX:N*/*:C#.*#-name '&' -or#} -false \) -print0 | \
 			${XARGS} -0 ${REINPLACE_CMD} -i '' -e 's/
$$//'
 .endif
 .endif
-- 
1.8.1.3
--- 0004-Mk-Use-PATCH_WRKSRC-instead-of-WRKSRC-for-DOS-to-Uni.patch ends here ---

--- dummy4 begins here ---
dummy file, because GNATS damages every other patch
--- dummy4 ends here ---

--- 0005-Mk-Allow-both-name-patterns-no-slash-and-qualified-n.patch begins here ---
>From fd51b18390750184ba9ca9bf8604fa8e55d7299a Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 15:15:46 +0100
Subject: [PATCH 05/10] Mk: Allow both name patterns (no slash) and qualified
 names (with slash) at once in DOS to Unix conversion.

---
 Mk/bsd.port.mk | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index a58ef14..21937ab 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -3624,7 +3624,8 @@ patch-dos2unix:
 .else
 .if ${USE_DOS2UNIX:M*/*}
 	@(cd "${PATCH_WRKSRC}"; ${REINPLACE_CMD} -i '' -e 's/
$$//' ${USE_DOS2UNIX:M*/*})
-.else
+.endif
+.if ${USE_DOS2UNIX:N*/*}
 	@${FIND} ${PATCH_WRKSRC} -type f \( ${USE_DOS2UNIX:N*/*:C#.*#-name '&' -or#} -false \) -print0 | \
 			${XARGS} -0 ${REINPLACE_CMD} -i '' -e 's/
$$//'
 .endif
-- 
1.8.1.3
--- 0005-Mk-Allow-both-name-patterns-no-slash-and-qualified-n.patch ends here ---

--- dummy5 begins here ---
dummy file, because GNATS damages every other patch
--- dummy5 ends here ---

--- 0006-jasperserver-Use-plain-USE_DOS2UNIX-since-it-uses-PA.patch begins here ---
>From 3fce89ccc09d4b030af5b9bf92db5e53356057e5 Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 20:28:51 +0100
Subject: [PATCH 06/10] jasperserver: Use plain USE_DOS2UNIX since it uses
 PATCH_WRKSRC.

---
 databases/jasperserver/Makefile | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/databases/jasperserver/Makefile b/databases/jasperserver/Makefile
index e0eddb0..63bdf5b 100644
--- a/databases/jasperserver/Makefile
+++ b/databases/jasperserver/Makefile
@@ -30,13 +30,11 @@ JSMAVENARCH=	FreeBSD-jasperreports-server-cp-${PORTVERSION}-maven-repository.zip
 JSUPDATE=	4.5.0-${PORTVERSION}
 
 NO_WRKSUBDIR=	yes
+USE_DOS2UNIX=	*.css *.dtd *.java *.js *.txt *.wdd *.xml *.xsl
 USE_JAVA=	yes
 JAVA_VERSION=	1.6
 USE_ZIP=	yes
 
-# use own DOS2UNIX in pre-patch, not the one from bsd.port.mk!
-DOS2UNIX_REGEX=	.*(css|dtd|java|js|txt|wsdd|xml|xsl)$$
-
 OPTIONS_SINGLE=	AS DB
 OPTIONS_SINGLE_AS=	TOMCAT6 TOMCAT7
 OPTIONS_SINGLE_DB=	MYSQL PGSQL
@@ -134,13 +132,6 @@ pre-extract:
 		${FALSE} ; \
 	fi
 
-# We can not use the USE_DOS2UNIX routine, since WRKDIR is redefined
-# and we have to convert files in a directory above WRKSRC!
-pre-patch:
-	@${ECHO_MSG} "===>   Converting DOS text files to UNIX text files"
-	@${FIND} -E ${SRCDIR} -type f -iregex '${DOS2UNIX_REGEX}' -print0 | \
-		${XARGS} -0 ${SED} -i '' -e 's/
$$//'
-
 post-patch:
 .for file in ${REPLACE_FILES}
 	@${ECHO_MSG} -n ">> Customizing `basename ${file}`..."
-- 
1.8.1.3
--- 0006-jasperserver-Use-plain-USE_DOS2UNIX-since-it-uses-PA.patch ends here ---

--- dummy6 begins here ---
dummy file, because GNATS damages every other patch
--- dummy6 ends here ---

--- 0007-all-Use-plain-USE_DOS2UNIX-instead-of-DOS2UNIX_REGEX.patch begins here ---
>From ee5c69ee6bb47404aa464d38bc928d59143abe27 Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 20:31:43 +0100
Subject: [PATCH 07/10] all: Use plain USE_DOS2UNIX instead of DOS2UNIX_REGEX.

In some cases, this also prevents damaging binary files.
---
 astro/gpstk/Makefile                  | 3 +--
 audio/linux-neroaaccodec/Makefile     | 3 +--
 audio/praat/Makefile                  | 3 +--
 audio/shoutcast/Makefile              | 3 +--
 audio/xmms-sexyspc/Makefile           | 3 +--
 benchmarks/xdd/Makefile               | 3 +--
 databases/mysql-workbench51/Makefile  | 3 +--
 devel/arduino/Makefile                | 3 +--
 devel/flyspray/Makefile               | 3 +--
 devel/luajava/Makefile                | 3 +--
 devel/raknet/Makefile                 | 3 +--
 emulators/dolphin-emu-devel/Makefile  | 3 +--
 emulators/pcsxr/Makefile              | 3 +--
 emulators/visualboyadvance-m/Makefile | 3 +--
 games/0ad/Makefile                    | 3 +--
 games/blobby/Makefile                 | 3 +--
 games/lwjgl/Makefile                  | 3 +--
 games/openjazz/Makefile               | 3 +--
 games/paintown/Makefile               | 3 +--
 games/ppracer/Makefile                | 3 +--
 german/selfhtml/Makefile              | 6 ++++--
 graphics/pear-Image_Graph/Makefile    | 3 +--
 java/jasmin/Makefile                  | 3 +--
 lang/neko/Makefile                    | 3 +--
 misc/metalink-editor/Makefile         | 3 +--
 net-mgmt/pnp/Makefile                 | 3 +--
 net/boinc-client/Makefile             | 3 +--
 print/hplip/Makefile                  | 3 +--
 science/hdf-java/Makefile             | 3 +--
 security/dradis/Makefile              | 3 +--
 textproc/s5/Makefile                  | 3 +--
 www/bigbluebutton/Makefile            | 3 +--
 www/phpvirtualbox/Makefile            | 3 +--
 www/scloader/Makefile                 | 4 +---
 www/trac-tweakui/Makefile             | 3 +--
 www/xpi-live_http_headers/Makefile    | 3 +--
 www/zen-cart/Makefile                 | 3 +--
 x11-fm/doublecmd/Makefile             | 3 +--
 x11-fm/qtfm/Makefile                  | 3 +--
 39 files changed, 42 insertions(+), 79 deletions(-)

diff --git a/astro/gpstk/Makefile b/astro/gpstk/Makefile
index 09002a5..bb05cd8 100644
--- a/astro/gpstk/Makefile
+++ b/astro/gpstk/Makefile
@@ -20,9 +20,8 @@ WRKSRC=		${WRKDIR}/${PORTNAME}
 
 USE_PYTHON_RUN=	yes
 USE_LDCONFIG=	yes
-USE_DOS2UNIX=	yes
+USE_DOS2UNIX=	Jamrules
 USE_GCC=	4.2+
-DOS2UNIX_REGEX=	${WRKSRC}/Jamrules
 
 JAM=		jam
 JAM_ENV=	PREFIX="${PREFIX}" \
diff --git a/audio/linux-neroaaccodec/Makefile b/audio/linux-neroaaccodec/Makefile
index 6e75d35..8f8a211 100644
--- a/audio/linux-neroaaccodec/Makefile
+++ b/audio/linux-neroaaccodec/Makefile
@@ -17,8 +17,7 @@ COMMENT=	Nero AAC reference quality MPEG-4 and 3GPP audio codec
 
 USE_ZIP=	yes
 USE_LINUX=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.txt
+USE_DOS2UNIX=	*.txt
 ONLY_FOR_ARCHS=	i386 amd64
 NO_BUILD=	yes
 NO_WRKSUBDIR=	yes
diff --git a/audio/praat/Makefile b/audio/praat/Makefile
index 57a5af4..4424064 100644
--- a/audio/praat/Makefile
+++ b/audio/praat/Makefile
@@ -15,8 +15,7 @@ DISTNAME=	praat4639_sources
 MAINTAINER=	jwbacon@tds.net
 COMMENT=	Phonetics by Computer
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*Makefile
+USE_DOS2UNIX=	Makefile
 USE_MOTIF=	yes
 WRKSRC=		${WRKDIR}/sources_4639
 MAKEFILE=	makefile
diff --git a/audio/shoutcast/Makefile b/audio/shoutcast/Makefile
index 026381b..04f7e96 100644
--- a/audio/shoutcast/Makefile
+++ b/audio/shoutcast/Makefile
@@ -18,8 +18,7 @@ COMMENT=	SHOUTcast Distributed Network Audio Server
 RESTRICTED=	redistribution of software is not permitted
 IA32_BINARY_PORT=	yes
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(conf|css|html|js|txt|xml)
+USE_DOS2UNIX=	*.conf *.css *.html *.js *.txt *.xml
 
 USE_RC_SUBR=	shoutcast
 
diff --git a/audio/xmms-sexyspc/Makefile b/audio/xmms-sexyspc/Makefile
index 9baf229..9153a8d 100644
--- a/audio/xmms-sexyspc/Makefile
+++ b/audio/xmms-sexyspc/Makefile
@@ -28,7 +28,6 @@ USE_LDCONFIG=	yes
 GNU_CONFIGURE=	yes
 USE_GMAKE=	yes
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.Inc
+USE_DOS2UNIX=	*.Inc
 
 .include <bsd.port.mk>
diff --git a/benchmarks/xdd/Makefile b/benchmarks/xdd/Makefile
index 15a0dfc..4b4b83d 100644
--- a/benchmarks/xdd/Makefile
+++ b/benchmarks/xdd/Makefile
@@ -18,8 +18,7 @@ COMMENT=	Tool for measuring and characterizing disk subsystem I/O
 
 WRKSRC=		${WRKDIR}/${DISTNAME}
 PLIST_FILES=	bin/xdd bin/timeserver bin/gettime
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(c|cpp|h)
+USE_DOS2UNIX=	*.c *.h
 
 post-extract:
 	${CP} ${FILESDIR}/freebsd.makefile ${WRKSRC}
diff --git a/databases/mysql-workbench51/Makefile b/databases/mysql-workbench51/Makefile
index 44999e4..42bb134 100644
--- a/databases/mysql-workbench51/Makefile
+++ b/databases/mysql-workbench51/Makefile
@@ -34,8 +34,7 @@ ACLOCAL_ARGS=
 AUTOCONF_ARGS=
 USE_LDCONFIG=	${PREFIX}/lib/mysql-workbench
 SUBDIRS=	ext/yassl/taocrypt ext/yassl .
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*ext/yassl/.*(Makefile.am|configure.in)
+USE_DOS2UNIX=	Makefile.am configure.in
 AUTOTOOLSFILES=	configure.in
 
 USE_GL=		gl glu
diff --git a/devel/arduino/Makefile b/devel/arduino/Makefile
index a3fa868..223c728 100644
--- a/devel/arduino/Makefile
+++ b/devel/arduino/Makefile
@@ -18,8 +18,7 @@ RUN_DEPENDS=	${JAVA_HOME}/jre/lib/ext/RXTXcomm.jar:${PORTSDIR}/comms/rxtx \
 		${LOCALBASE}/avr/include/avr/io.h:${PORTSDIR}/devel/avr-libc
 
 WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\(\.\(c|cpp|h|hex|html|ino|lst|txt\)|Makefile\)
+USE_DOS2UNIX=	*.c *.cpp *.h *.hex *.html *.ino *.lst *.txt Makefile
 
 USE_JAVA=	1.6+
 NO_BUILD=	yes
diff --git a/devel/flyspray/Makefile b/devel/flyspray/Makefile
index fb683e6..72cba99 100644
--- a/devel/flyspray/Makefile
+++ b/devel/flyspray/Makefile
@@ -19,8 +19,7 @@ WANT_PHP_WEB=	yes
 NO_BUILD=	yes
 NO_WRKSUBDIR=	yes
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.php
+USE_DOS2UNIX=	*.php
 
 OPTIONS_DEFINE=	GRAPHVIZ MYSQL MYSQLI POSTGRES
 OPTIONS_DEFAULT=	MYSQLI
diff --git a/devel/luajava/Makefile b/devel/luajava/Makefile
index efed285..2405760 100644
--- a/devel/luajava/Makefile
+++ b/devel/luajava/Makefile
@@ -25,8 +25,7 @@ USE_LDCONFIG=	yes
 MAKE_JOBS_UNSAFE=	yes
 
 ALL_TARGET=	run
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.*
+USE_DOS2UNIX=	*.css *.html config package-list
 
 post-patch:
 	@${REINPLACE_CMD} -e 's|%%LUA_DIR%%|${PREFIX}|' ${WRKSRC}/config
diff --git a/devel/raknet/Makefile b/devel/raknet/Makefile
index 93d63ff..4210921 100644
--- a/devel/raknet/Makefile
+++ b/devel/raknet/Makefile
@@ -29,8 +29,7 @@ LICENSE_PERMS_SpecialAuth=	${_LICENSE_PERMS_DEFAULT}
 USE_ZIP=	yes
 NO_WRKSUBDIR=	yes
 USE_LDCONFIG=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(cpp|h|txt)
+USE_DOS2UNIX=	*.cpp *.h *.txt
 
 USE_GMAKE=	yes
 USE_CMAKE=	yes
diff --git a/emulators/dolphin-emu-devel/Makefile b/emulators/dolphin-emu-devel/Makefile
index 86e1e4f..587dfe2 100644
--- a/emulators/dolphin-emu-devel/Makefile
+++ b/emulators/dolphin-emu-devel/Makefile
@@ -30,8 +30,7 @@ USE_WX=		2.9+
 WX_UNICODE=	yes
 USE_GL=	gl glew glu
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(h|c|cpp)
+USE_DOS2UNIX=	*.c *.cpp *.h
 
 # XXX Has only been tested with clang and gcc
 .if ${CC} != "clang" && ${CXX} != "clang++"
diff --git a/emulators/pcsxr/Makefile b/emulators/pcsxr/Makefile
index 0665d85..2572364 100644
--- a/emulators/pcsxr/Makefile
+++ b/emulators/pcsxr/Makefile
@@ -32,8 +32,7 @@ USE_CSTD=	gnu89
 CONFIGURE_ARGS=	--enable-opengl --enable-libcdio
 USE_LDCONFIG=	yes
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(c|h|cpp|hpp|am)
+USE_DOS2UNIX=	*.am *.c *.cpp *.h *.hpp
 
 USE_GNOME=	gtk20 desktopfileutils glib20
 USE_ICONV=	yes
diff --git a/emulators/visualboyadvance-m/Makefile b/emulators/visualboyadvance-m/Makefile
index 00fd26a..f856108 100644
--- a/emulators/visualboyadvance-m/Makefile
+++ b/emulators/visualboyadvance-m/Makefile
@@ -23,8 +23,7 @@ OPTIONS=	GVBAM "Build gvbam (GTK2 frontend)" on \
 
 USE_BZIP2=	yes
 WANT_GNOME=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(c|cpp|h)
+USE_DOS2UNIX=	*.c *.cpp *.h
 USE_XORG=	x11 xext
 USE_GL=		gl glu
 USE_SDL=	sdl
diff --git a/games/0ad/Makefile b/games/0ad/Makefile
index c248f36..21afc85 100644
--- a/games/0ad/Makefile
+++ b/games/0ad/Makefile
@@ -31,8 +31,7 @@ USE_SDL=	sdl
 USE_GNOME=	libxml2 gtk20
 USE_GL=		gl
 USE_OPENAL=	al
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.([ch]p{0,2}|make)
+USE_DOS2UNIX=	*.c *.cpp *.h *.hpp *.make
 MAKE_JOBS_SAFE=	yes
 
 USE_WX=		2.8
diff --git a/games/blobby/Makefile b/games/blobby/Makefile
index 36a7279..95dab4b 100644
--- a/games/blobby/Makefile
+++ b/games/blobby/Makefile
@@ -28,8 +28,7 @@ USE_CMAKE=	yes
 CMAKE_ARGS+=	-DDATADIR:PATH="${DATADIR}"
 WRKSRC=		${WRKDIR}/blobby-1.0rc1
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(c|h|cpp)
+USE_DOS2UNIX=	*.c *.cpp *.h
 
 PORTDOCS=	AUTHORS ChangeLog INSTALL NEWS README TODO
 
diff --git a/games/lwjgl/Makefile b/games/lwjgl/Makefile
index 8f37ba0..6e7ca6d 100644
--- a/games/lwjgl/Makefile
+++ b/games/lwjgl/Makefile
@@ -32,8 +32,7 @@ EXTRACT_AFTER_ARGS=	-d ${WRKSRC}
 USE_ZIP=	yes
 USE_JAVA=	yes
 USE_LDCONFIG=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*.[^j][^a][^r]$
+USE_DOS2UNIX=	*.xml
 JAVA_VERSION=	1.6+
 JAVA_OS=	native
 JAVA_VENDOR=	openjdk
diff --git a/games/openjazz/Makefile b/games/openjazz/Makefile
index feea7dc..a50296c 100644
--- a/games/openjazz/Makefile
+++ b/games/openjazz/Makefile
@@ -25,8 +25,7 @@ ALL_TARGET=	OpenJazz
 USE_XORG=	x11 xext xrandr xrender xau xdmcp
 USE_SDL=	sdl
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(h|cpp)
+USE_DOS2UNIX=	*.cpp *.h
 
 CPPFLAGS+=	-I${LOCALBASE}/include `${SDL_CONFIG} --cflags` \
 		-DDATAPATH=\\\"${DATADIR}/\\\" -DHOMEDIR
diff --git a/games/paintown/Makefile b/games/paintown/Makefile
index 191bf1b..02a5463 100644
--- a/games/paintown/Makefile
+++ b/games/paintown/Makefile
@@ -25,8 +25,7 @@ USE_BZIP2=	yes
 USE_SCONS=	yes
 USE_SDL=	yes
 INSTALLS_ICONS=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(c|cpp|h)
+USE_DOS2UNIX=	*.c *.cpp *.h
 
 SCONS_BUILDENV+=CPPPATH="${LOCALBASE}/include" \
 		LIBPATH="${LOCALBASE}/lib"
diff --git a/games/ppracer/Makefile b/games/ppracer/Makefile
index 13c153e..a06ae8f 100644
--- a/games/ppracer/Makefile
+++ b/games/ppracer/Makefile
@@ -23,8 +23,7 @@ USE_SDL=	mixer sdl
 USE_GL=		gl
 USE_GMAKE=	yes
 GNU_CONFIGURE=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(c|cpp|h)
+USE_DOS2UNIX=	*.c *.cpp *.h
 
 post-patch:
 	@${REINPLACE_CMD} -e 's,/usr/X11R6,${LOCALBASE},g' \
diff --git a/german/selfhtml/Makefile b/german/selfhtml/Makefile
index 3e0e7dd..cb756e3 100644
--- a/german/selfhtml/Makefile
+++ b/german/selfhtml/Makefile
@@ -30,8 +30,10 @@ WRKSRC=		${WRKDIR}
 USE_ZIP=	yes
 NO_BUILD=	yes
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(css|dhtml|diverses|editorial|grafik|helferlein|htm|inter|intro|javascript|layouts|navigation|perl|php|projekt|quellen|servercgi|src|xml|xls|dtd)$$
+USE_DOS2UNIX=	*.css *.dhtml *.diverses *.dtd *.editorial *.grafik \
+		*.helferlein *.htm *.inter *.intro *.javascript *.layouts \
+		*.navigation *.perl *.php *.projekt *.quellen *.servercgi \
+		*.src *.xls *.xml
 
 PORTDOCS=	\
 		index.htm \
diff --git a/graphics/pear-Image_Graph/Makefile b/graphics/pear-Image_Graph/Makefile
index 69f44c4..630d8ba 100644
--- a/graphics/pear-Image_Graph/Makefile
+++ b/graphics/pear-Image_Graph/Makefile
@@ -18,8 +18,7 @@ RUN_DEPENDS=	${PEARDIR}/Log.php:${PORTSDIR}/sysutils/pear-Log \
 
 PEAR_AUTOINSTALL=	yes
 USE_PHP=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*php$$
+USE_DOS2UNIX=	*.php
 DEFAULT_PHP_VER=	5 
 IGNORE_WITH_PHP=	4
 
diff --git a/java/jasmin/Makefile b/java/jasmin/Makefile
index f10d7d8..e5d34047 100644
--- a/java/jasmin/Makefile
+++ b/java/jasmin/Makefile
@@ -15,8 +15,7 @@ USE_ANT=	yes
 ALL_TARGET=	jasmin
 USE_JAVA=	yes
 JAVA_VERSION=	1.6+
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(txt|xml|j|class|java|mf|css|bnf|html)
+USE_DOS2UNIX=	*.bnf *.class *.css *.html *.j *.java *.mf *.txt *.xml
 
 SUB_FILES=	jasmin.sh
 
diff --git a/lang/neko/Makefile b/lang/neko/Makefile
index 53c9eb1..55f4464 100644
--- a/lang/neko/Makefile
+++ b/lang/neko/Makefile
@@ -20,8 +20,7 @@ ONLY_FOR_ARCHS=	i386 amd64
 
 USE_AUTOTOOLS=	libtool:env
 USE_GMAKE=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX= .*(Makefile|\.(c|h|neko|nml))$$
+USE_DOS2UNIX=	*.c *.h *.neko *.nml Makefile
 
 OPTIONS_DEFINE=		APACHE MYSQL SQLITE PCRE GTK2
 OPTIONS_DEFAULT=	PCRE GTK2
diff --git a/misc/metalink-editor/Makefile b/misc/metalink-editor/Makefile
index 7373326..6f86d10 100644
--- a/misc/metalink-editor/Makefile
+++ b/misc/metalink-editor/Makefile
@@ -20,8 +20,7 @@ LICENSE=	GPLv2
 LICENSE_FILE=	${WRKDIR}/license.txt
 
 USE_ZIP=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.txt
+USE_DOS2UNIX=	*.txt
 NO_WRKSUBDIR=	yes
 USE_PYTHON=	yes
 USE_PYDISTUTILS=	yes
diff --git a/net-mgmt/pnp/Makefile b/net-mgmt/pnp/Makefile
index 09fa1f2..24a4761 100644
--- a/net-mgmt/pnp/Makefile
+++ b/net-mgmt/pnp/Makefile
@@ -33,8 +33,7 @@ USE_PHP=	gd iconv json pcre simplexml sockets xml zlib
 WANT_PHP_WEB=	yes
 USE_RC_SUBR=	npcd
 MAN8=		npcd.8
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	'.*\.\(php\|js\|txt\)$$'
+USE_DOS2UNIX=	*.js *.php *.txt
 
 NAGIOSDIR?=	/var/spool/nagios
 NAGIOSHTMURL?=	/nagios
diff --git a/net/boinc-client/Makefile b/net/boinc-client/Makefile
index 5f7a439..92264b5 100644
--- a/net/boinc-client/Makefile
+++ b/net/boinc-client/Makefile
@@ -18,8 +18,7 @@ COMMENT=	Berkeley Open Infrastructure for Network Computing client
 USE_XZ=		yes
 GNU_CONFIGURE=	yes
 USE_LDCONFIG=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(cpp|h)
+USE_DOS2UNIX=	*.cpp *.h
 
 BOINC_CLIENT_USER?=	boinc
 BOINC_CLIENT_GROUP?=	nobody
diff --git a/print/hplip/Makefile b/print/hplip/Makefile
index eebff8a..17a8327 100644
--- a/print/hplip/Makefile
+++ b/print/hplip/Makefile
@@ -47,8 +47,7 @@ USE_LDCONFIG=	yes
 MAKE_JOBS_SAFE=	yes
 
 SUB_FILES=	pkg-message
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=.+\.(c|cpp|h|py)$
+USE_DOS2UNIX=	*.c *.cpp *.h *.py
 
 FILES4FIX=	Makefile.in \
 		base/codes.py \
diff --git a/science/hdf-java/Makefile b/science/hdf-java/Makefile
index 9a09ed8..0376222 100644
--- a/science/hdf-java/Makefile
+++ b/science/hdf-java/Makefile
@@ -19,8 +19,7 @@ JAVA_VERSION=	1.6+
 JAVA_BUILD=	yes
 JAVA_RUN=	yes
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*/examples/.*Makefile.in
+USE_DOS2UNIX=	Makefile.in
 
 USE_GMAKE=	yes
 GNU_CONFIGURE=	yes
diff --git a/security/dradis/Makefile b/security/dradis/Makefile
index 554043a..702898a 100644
--- a/security/dradis/Makefile
+++ b/security/dradis/Makefile
@@ -40,8 +40,7 @@ USE_RUBY_FEATURES=	iconv
 RUBY_SHEBANG_FILES=	server/script/rails server/script/delayed_job
 RUBY_NO_BUILD_DEPENDS=	yes
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*(css|rb|txt|js|RELEASE_NOTES)$$
+USE_DOS2UNIX=	*.css *.js *.rb *.txt RELEASE_NOTES
 
 pre-install:
 	@${FIND} ${WRKSRC}/server -type f \( -name "*.bak" -o -name "*.orig" -o -name "*.swp" \) -delete
diff --git a/textproc/s5/Makefile b/textproc/s5/Makefile
index 2b3b5c9..d9bb0e5 100644
--- a/textproc/s5/Makefile
+++ b/textproc/s5/Makefile
@@ -17,8 +17,7 @@ COMMENT=	A simple HTML-based presentation system
 
 BUILD_DEPENDS=	unzip:${PORTSDIR}/archivers/unzip
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(css|htc|html|js|txt)
+USE_DOS2UNIX=	*.css *.htc *.html *.js *.txt
 USE_ZIP=	yes
 WRKSRC=		${WRKDIR}
 NO_BUILD=	yes
diff --git a/www/bigbluebutton/Makefile b/www/bigbluebutton/Makefile
index 9465b90..93684e6 100644
--- a/www/bigbluebutton/Makefile
+++ b/www/bigbluebutton/Makefile
@@ -31,8 +31,7 @@ RUN_DEPENDS:=	${BUILD_DEPENDS}
 
 MANUAL_PACKAGE_BUILD=	requires non-default configuration of dependency
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.+\.(conf|jsp|properties|xml)$
+USE_DOS2UNIX=	*.conf *.jsp *.properties *.xml
 
 USE_JAVA=	yes
 JAVA_EXTRACT=	yes
diff --git a/www/phpvirtualbox/Makefile b/www/phpvirtualbox/Makefile
index 7eb3f5af..bd7b52dd 100644
--- a/www/phpvirtualbox/Makefile
+++ b/www/phpvirtualbox/Makefile
@@ -17,8 +17,7 @@ LICENSE_FILE=	${WRKSRC}/LICENSE.txt
 USE_ZIP=	yes
 USE_PHP=	json session soap simplexml
 NO_BUILD=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(php|txt|js|css|html)
+USE_DOS2UNIX=	*.css *.html *.js *.php *.txt
 
 do-install:
 	@${MKDIR} ${WWWDIR}
diff --git a/www/scloader/Makefile b/www/scloader/Makefile
index 85e8453..b5e1dca 100644
--- a/www/scloader/Makefile
+++ b/www/scloader/Makefile
@@ -13,7 +13,7 @@ COMMENT=	Configurable web graber/spider
 USE_ZIP=	yes
 USE_JAVA=	yes
 JAVA_VERSION=	1.6+
-USE_DOS2UNIX=	yes
+USE_DOS2UNIX=	*.html *.java README
 
 NO_WRKSUBDIR=	yes
 NO_BUILD=	yes
@@ -21,8 +21,6 @@ NO_BUILD=	yes
 PLIST_FILES=	bin/${PORTNAME} %%JAVAJARDIR%%/scloader.jar
 PORTDOCS=	README history todo
 
-DOS2UNIX_REGEX=	.+\.[^j][^a][^r]$
-
 do-configure:
 		${SED} -e "s|%%JAVA%%|${LOCALBASE}/bin/java|" \
 		-e "s|%%JAVAJARDIR%%|${JAVAJARDIR}|" \
diff --git a/www/trac-tweakui/Makefile b/www/trac-tweakui/Makefile
index 57dfcff..8aade9b 100644
--- a/www/trac-tweakui/Makefile
+++ b/www/trac-tweakui/Makefile
@@ -20,8 +20,7 @@ COMMENT=	Easily tweak Trac pages with JavaScript expressions
 RUN_DEPENDS+=	tracd:${PORTSDIR}/www/trac
 
 USE_ZIP=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(css|html|js|py|txt)$
+USE_DOS2UNIX=	*.css *.html *.js *.py *.txt
 
 EXAMPLESDIR=	${PREFIX}/share/examples/${PKGNAMEPREFIX}${PORTNAME}
 
diff --git a/www/xpi-live_http_headers/Makefile b/www/xpi-live_http_headers/Makefile
index 1d22a53..455b91b 100644
--- a/www/xpi-live_http_headers/Makefile
+++ b/www/xpi-live_http_headers/Makefile
@@ -35,8 +35,7 @@ XPI_DIRS=	chrome/icons/default \
 		defaults/preferences \
 		defaults
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(js|rdf|txt)
+USE_DOS2UNIX=	*.js *.rdf *.txt
 
 post-patch:
 	@${FIND} ${WRKSRC} -name \*.orig -exec ${RM} \{} \;
diff --git a/www/zen-cart/Makefile b/www/zen-cart/Makefile
index ef29dc2..3415bdd 100644
--- a/www/zen-cart/Makefile
+++ b/www/zen-cart/Makefile
@@ -21,8 +21,7 @@ LICENSE_FILE=	${WRKSRC}/license.txt
 USE_ZIP=	yes
 USE_PHP=	yes
 WANT_PHP_WEB=	yes
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.php
+USE_DOS2UNIX=	*.php
 
 EXAMPLESDIR=	${PREFIX}/share/examples/${PORTNAME}
 NO_BUILD=	yes
diff --git a/x11-fm/doublecmd/Makefile b/x11-fm/doublecmd/Makefile
index eee2850..7b47a89 100644
--- a/x11-fm/doublecmd/Makefile
+++ b/x11-fm/doublecmd/Makefile
@@ -19,8 +19,7 @@ BUILD_DEPENDS=	lazbuild:${PORTSDIR}/editors/lazarus \
 ONLY_FOR_ARCHS=	i386 amd64
 
 MAN1=		${PORTNAME}.1
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(pas)
+USE_DOS2UNIX=	*.pas
 USE_FPC=	yes
 USE_GNOME=	desktopfileutils
 PLIST=		${WRKDIR}/pkg-plist
diff --git a/x11-fm/qtfm/Makefile b/x11-fm/qtfm/Makefile
index 2013fbe..6c73a4e 100644
--- a/x11-fm/qtfm/Makefile
+++ b/x11-fm/qtfm/Makefile
@@ -16,8 +16,7 @@ COMMENT=	A small, lightweight file manager based on pure Qt
 LICENSE=	GPLv2
 LICENSE_FILE=	${WRKSRC}/COPYING
 
-USE_DOS2UNIX=	yes
-DOS2UNIX_REGEX=	.*\.(h|cpp)
+USE_DOS2UNIX=	*.cpp *.h
 USE_QT4=	gui network qmake_build moc_build rcc_build \
 		imageformats_run
 
-- 
1.8.1.3
--- 0007-all-Use-plain-USE_DOS2UNIX-instead-of-DOS2UNIX_REGEX.patch ends here ---

--- dummy7 begins here ---
dummy file, because GNATS damages every other patch
--- dummy7 ends here ---

--- 0008-Mk-Remove-DOS2UNIX_REGEX.patch begins here ---
>From 17b1837ef69bb66330f565f454fb693674bb9931 Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 20:32:38 +0100
Subject: [PATCH 08/10] Mk: Remove DOS2UNIX_REGEX.

USE_DOS2UNIX supports glob patterns, which is sufficient.
---
 Mk/bsd.port.mk | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index 21937ab..baea953 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -313,9 +313,6 @@ FreeBSD_MAINTAINER=	portmgr@FreeBSD.org
 #			  ${PATCH_WRKSRC}. If set to a string, remove in all
 #			  files under ${PATCH_WRKSRC} with one of these names
 #			  the ^Ms.
-# DOS2UNIX_REGEX
-#				- Limit the ^M removal to files which name matches
-#				  the regular expression.
 # USE_GCC		- If set, this port requires this version of gcc, either in
 #				  the system or installed from a port.
 # USE_CSTD		- Override the default C language standard (gnu89, gnu99)
@@ -1294,8 +1291,6 @@ UNIQUENAME?=	${PKGNAMEPREFIX}${PORTNAME}
 
 .endif
 
-DOS2UNIX_REGEX?=	.*
-
 # At least KDE needs TMPDIR for the package building,
 # so we're setting it to the known default value.
 .if defined(PACKAGE_BUILDING)
@@ -3619,7 +3614,7 @@ patch-dos2unix:
 .if defined(USE_DOS2UNIX)
 	@${ECHO_MSG} "===>  Converting DOS text files to UNIX text files"
 .if ${USE_DOS2UNIX:U}=="YES"
-	@${FIND} -E ${PATCH_WRKSRC} -type f -iregex '${DOS2UNIX_REGEX}' -print0 | \
+	@${FIND} -E ${PATCH_WRKSRC} -type f -print0 | \
 			${XARGS} -0 ${REINPLACE_CMD} -i '' -e 's/
$$//'
 .else
 .if ${USE_DOS2UNIX:M*/*}
-- 
1.8.1.3
--- 0008-Mk-Remove-DOS2UNIX_REGEX.patch ends here ---

--- dummy8 begins here ---
dummy file, because GNATS damages every other patch
--- dummy8 ends here ---

--- 0009-all-Remove-manual-CRLF-conversion-for-files-.patch begins here ---
>From 9d635caae941f22e569734e84ab1a3785990779c Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 20:54:32 +0100
Subject: [PATCH 09/10] all: Remove manual CRLF conversion for files,
 which do not contain CRLF.

---
 x11-toolkits/libgtk-java/Makefile | 1 -
 x11/libgnome-java/Makefile        | 2 --
 2 files changed, 3 deletions(-)

diff --git a/x11-toolkits/libgtk-java/Makefile b/x11-toolkits/libgtk-java/Makefile
index b62d621..b1261d2 100644
--- a/x11-toolkits/libgtk-java/Makefile
+++ b/x11-toolkits/libgtk-java/Makefile
@@ -36,7 +36,6 @@ MAKE_ENV+=	BOOTCLASSPATH=${JAVA_CLASSES}
 
 post-patch:
 	@${REINPLACE_CMD} -e 's|sed -i|${SED} -i.bak -e|' ${WRKSRC}/Makefile.in
-	@${REINPLACE_CMD} -e 's|
||' ${WRKSRC}/gtk2-java.pc.in
 	@${REINPLACE_CMD} -e 's|echo aout|echo elf|g' \
 		${WRKSRC}/configure
 
diff --git a/x11/libgnome-java/Makefile b/x11/libgnome-java/Makefile
index 1f40a26..08dbcea 100644
--- a/x11/libgnome-java/Makefile
+++ b/x11/libgnome-java/Makefile
@@ -40,8 +40,6 @@ PLIST_SUB=		GNOME_API_VERSION=${GNOME_API_VERSION} PORTNAME=${PORTNAME}
 PKGMESSAGE=		${WRKDIR}/pkg-message
 
 post-extract:
-	@${REINPLACE_CMD} -e 's|
||g' \
-		${WRKSRC}/gnome2-java.pc.in
 	@${REINPLACE_CMD} -e 's|echo aout|echo elf|g' \
 	    	${WRKSRC}/configure
 
-- 
1.8.1.3
--- 0009-all-Remove-manual-CRLF-conversion-for-files-.patch ends here ---

--- dummy9 begins here ---
dummy file, because GNATS damages every other patch
--- dummy9 ends here ---

--- 0010-all-Use-USE_DOS2UNIX-instead-of-manual-CRLF-conversi.patch begins here ---
>From c5196269babe197820c57199ecb4631b3889201d Mon Sep 17 00:00:00 2001
From: Christoph Mallon <christoph.mallon@gmx.de>
Date: Mon, 11 Feb 2013 20:57:32 +0100
Subject: [PATCH 10/10] all: Use USE_DOS2UNIX instead of manual CRLF
 conversion.

---
 ftp/urlgfe/Makefile            | 5 ++---
 graphics/povray31/Makefile     | 5 ++---
 graphics/povray31/files/script | 6 ------
 irc/xchat-fish/Makefile        | 6 +-----
 irc/xchat-mircryption/Makefile | 6 +-----
 math/sedumi/Makefile           | 8 +-------
 multimedia/subtools/Makefile   | 3 ++-
 net-im/amsn/Makefile           | 3 +--
 security/p5-Crypt-RC6/Makefile | 4 +---
 textproc/clit/Makefile         | 4 +---
 x11-toolkits/ruby-wx/Makefile  | 2 +-
 11 files changed, 13 insertions(+), 39 deletions(-)
 delete mode 100644 graphics/povray31/files/script

diff --git a/ftp/urlgfe/Makefile b/ftp/urlgfe/Makefile
index 3c4cd57..14a061a 100644
--- a/ftp/urlgfe/Makefile
+++ b/ftp/urlgfe/Makefile
@@ -16,6 +16,7 @@ COMMENT=	A download manager
 
 LIB_DEPENDS=	curl.6:${PORTSDIR}/ftp/curl
 
+USE_DOS2UNIX=	*.[ch] ${PORTNAME}.desktop
 USE_GNOME=	gtk20 lthack
 WANT_GNOME=	yes
 USE_OPENSSL=	yes
@@ -33,12 +34,10 @@ PLIST_SUB+=	GNOME:="@comment "
 .endif
 
 post-patch:
-	@${FIND} ${WRKSRC} -name "*.[ch]" | ${XARGS} ${REINPLACE_CMD} -e \
-		's|
$$||g'
 	@${FIND} ${WRKSRC} -type f | ${XARGS} ${TOUCH} -f
 	@${REINPLACE_CMD} -e 's|[$$]{prefix}/doc/urlgfe|${DOCSDIR}|g' \
 		${WRKSRC}/Makefile.in
-	@${REINPLACE_CMD} -e 's|
$$||g ; s|urlgfe_icon|urlgfe-icon|g ; \
+	@${REINPLACE_CMD} -e 's|urlgfe_icon|urlgfe-icon|g ; \
 		s|/usr/share/pixmaps/urlgfe/||g' ${WRKSRC}/${PORTNAME}.desktop
 	@${REINPLACE_CMD} -e 's|	 -g|	 ${CFLAGS}|g' \
 		${WRKSRC}/src/Makefile.in
diff --git a/graphics/povray31/Makefile b/graphics/povray31/Makefile
index f09b32c..263ade1 100644
--- a/graphics/povray31/Makefile
+++ b/graphics/povray31/Makefile
@@ -21,6 +21,8 @@ COMMENT=	Persistence of Vision Ray Tracer
 
 LIB_DEPENDS=	png15:${PORTSDIR}/graphics/png
 
+USE_DOS2UNIX=	*.cat *.c[123] *.inc *.ini *.map *.par *.pov *.sh *.sph *.tri *.txt
+
 OPTIONS=	X11 "X Window support" On
 
 DIST_SUBDIR=	povray31
@@ -67,7 +69,4 @@ do-install:
 	@${INSTALL_MAN} ${WRKSRC}/${LATEST_LINK}.1 ${PREFIX}/man/man1
 	@${CHMOD} -R a+rX,og-w ${POVLIB}
 
-post-install:
-	@${SH} ${FILESDIR}/script
-
 .include <bsd.port.post.mk>
diff --git a/graphics/povray31/files/script b/graphics/povray31/files/script
deleted file mode 100644
index d18a572..0000000
--- a/graphics/povray31/files/script
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-for i in `find /usr/local/lib/povray31 \( -name '*.ini' -o -name '*.pov' -o -name '*.txt' -o -name '*.sh' -o -name '*.map' -o -name '*.inc' -o -name '*.par' -o -name '*.sph' -o -name '*.tri' -o -name '*.c*' \) -print`; do
-	sed -e 's/
$//g' $i > /tmp/xfer	# ^M is Ctrl+M
-	rm $i
-	mv /tmp/xfer $i
-done
diff --git a/irc/xchat-fish/Makefile b/irc/xchat-fish/Makefile
index c0a3c27..74ab46f 100644
--- a/irc/xchat-fish/Makefile
+++ b/irc/xchat-fish/Makefile
@@ -17,6 +17,7 @@ COMMENT=	An encryption plugin for XChat
 BUILD_DEPENDS=	${LOCALBASE}/lib/libmiracl.a:${PORTSDIR}/math/miracl
 RUN_DEPENDS=	xchat:${PORTSDIR}/irc/xchat
 
+USE_DOS2UNIX=	yes
 USE_ZIP=	yes
 NO_WRKSUBDIR=	yes
 DOCSDIR=	${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
@@ -31,11 +32,6 @@ PORTDOCS=	FiSH-xchat.txt \
 post-patch:
 	@${CP} -pf ${FILESDIR}/Makefile ${WRKSRC}/
 	@${RM} -f ${WRKSRC}/mir*
-# \r\n -> \n
-	@${FIND} ${WRKSRC} -type f -exec \
-		${REINPLACE_CMD} -E \
-		-e 's|
||' \
-		{} \;
 
 do-install:
 # docs
diff --git a/irc/xchat-mircryption/Makefile b/irc/xchat-mircryption/Makefile
index 933288f..719b683 100644
--- a/irc/xchat-mircryption/Makefile
+++ b/irc/xchat-mircryption/Makefile
@@ -16,6 +16,7 @@ COMMENT=	A free encryption add-on for the popular XChat irc client
 
 RUN_DEPENDS=	xchat:${PORTSDIR}/irc/xchat
 
+USE_DOS2UNIX=	yes
 USE_ZIP=	yes
 ALL_TARGET=	freebsd
 CFLAGS+=	-fPIC
@@ -32,11 +33,6 @@ PORTDOCS=	README.txt
 PORTEXAMPLES=	mcps_masterkey_on_start.pl
 
 post-patch:
-# \r\n -> \n
-	@${FIND} ${WRKSRC} -type f -exec \
-		${REINPLACE_CMD} -E \
-		-e 's|
||' \
-		{} \;
 # CFLAGS safeness
 # LDFLAGS safeness
 # linker safeness
diff --git a/math/sedumi/Makefile b/math/sedumi/Makefile
index 4a61c31..e6d0e3e 100644
--- a/math/sedumi/Makefile
+++ b/math/sedumi/Makefile
@@ -19,16 +19,10 @@ COMMENT=	SeDuMi is an semidefinite programming solver on Matlab
 RUN_DEPENDS=	octave:${PORTSDIR}/math/octave
 BUILD_DEPENDS=	octave:${PORTSDIR}/math/octave
 
+USE_DOS2UNIX=	*.[cm]
 USE_ZIP=	yes
 WRKSRC=		${WRKDIR}/SeDuMi_1_1
 
-pre-patch:
-	@${LS} ${WRKSRC}/*.m ${WRKSRC}/*.c > ${WRKDIR}/FILELIST
-	@for i in `${CAT} ${WRKDIR}/FILELIST`; do \
-		cd ${WRKSRC} ; ${REINPLACE_CMD} -e 's#
##g' $$i ; \
-	done
-	@cd ${WRKSRC} ; ${RM} *.bak
-
 pre-build:
 	@cd ${WRKSRC} ; ${RM} *.dll *.orig
 
diff --git a/multimedia/subtools/Makefile b/multimedia/subtools/Makefile
index 3dee58d..fc057da 100644
--- a/multimedia/subtools/Makefile
+++ b/multimedia/subtools/Makefile
@@ -14,6 +14,7 @@ MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION}alpha
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Command-line tools for movie subtitles in SubRipper format
 
+USE_DOS2UNIX=	yes
 USE_PYTHON=	yes
 WRKSRC=		${WRKDIR}/${PORTNAME}/src
 EXECS=		srtshift srtrate
@@ -22,7 +23,7 @@ PORTDOCS=	CHANGELOG.TXT LICENSE.TXT README.TXT TODO.TXT
 PLIST_FILES=	${EXECS:S/^/bin\//} ${PYEXECS:S/^/bin\//}
 
 post-patch:
-	@${REINPLACE_CMD} -e 's,
,,g;s,^.*#!.*python.*$$,#!${PYTHON_CMD},' ${WRKSRC}/*
+	@${REINPLACE_CMD} -e 's,^.*#!.*python.*$$,#!${PYTHON_CMD},' ${WRKSRC}/*
 
 do-build:
 .for EXEC in ${EXECS}
diff --git a/net-im/amsn/Makefile b/net-im/amsn/Makefile
index ebd6c28..59b57ca 100644
--- a/net-im/amsn/Makefile
+++ b/net-im/amsn/Makefile
@@ -27,6 +27,7 @@ RUN_DEPENDS=	xdg-open:${PORTSDIR}/devel/xdg-utils \
 		snack>=2.2.10_4:${PORTSDIR}/audio/snack
 
 USE_BZIP2=	yes
+USE_DOS2UNIX=	*.[ch]
 USE_GMAKE=	yes
 USE_LDCONFIG=	yes
 USE_XORG=	x11
@@ -47,8 +48,6 @@ CONFIGURE_ENV+=	CFLAGS+="-I${LOCALBASE}/include" \
 		LDFLAGS+="-L${LOCALBASE}/lib"
 
 post-patch:
-	@${FIND} ${WRKSRC} -name '*.c' -or -name '*.h' | ${XARGS} ${REINPLACE_CMD} -e 's|
||'
-	@${FIND} ${WRKSRC} -name '*.bak' -delete
 	${REINPLACE_CMD} -e 's|Linux|FreeBSD|g' ${WRKSRC}/amsn.desktop
 
 post-install:
diff --git a/security/p5-Crypt-RC6/Makefile b/security/p5-Crypt-RC6/Makefile
index 869bd79..3b26188 100644
--- a/security/p5-Crypt-RC6/Makefile
+++ b/security/p5-Crypt-RC6/Makefile
@@ -15,10 +15,8 @@ MAINTAINER=	perl@FreeBSD.org
 COMMENT=	Perl implementation of the RC6 encryption algorithm
 
 PERL_CONFIGURE=	yes
+USE_DOS2UNIX=	*.pm
 
 MAN3=		Crypt::RC6.3
 
-do-patch:
-	${REINPLACE_CMD} -e 's/
//' ${WRKSRC}/RC6.pm
-
 .include <bsd.port.mk>
diff --git a/textproc/clit/Makefile b/textproc/clit/Makefile
index 76f0320..9c2eee0 100644
--- a/textproc/clit/Makefile
+++ b/textproc/clit/Makefile
@@ -26,6 +26,7 @@ MIN_VER=	8
 
 PLIST_FILES=	bin/clit
 
+USE_DOS2UNIX=	*.[ch]
 USE_ZIP=	yes
 USE_GMAKE=	yes
 
@@ -33,9 +34,6 @@ post-extract:
 	cd ${WRKDIR} && ${BZIP2_CMD} -dc "${DISTDIR}/ltm-0.33.tar.bz2" | \
 		${TAR} -xf -
 
-post-patch:
-	@${FIND} ${WRKDIR} -name *.c -or -name *.h | ${XARGS} ${REINPLACE_CMD} -e 's|
||'
-
 do-build:
 	cd ${WRKDIR}/libtommath-0.33 && \
 	${SETENV} ${MAKE_ENV} ${MAKE} -f makefile  libtommath.a
diff --git a/x11-toolkits/ruby-wx/Makefile b/x11-toolkits/ruby-wx/Makefile
index 8691c6d..17db670 100644
--- a/x11-toolkits/ruby-wx/Makefile
+++ b/x11-toolkits/ruby-wx/Makefile
@@ -18,6 +18,7 @@ DIST_SUBDIR=	ruby
 MAINTAINER=	ruby@FreeBSD.org
 COMMENT=	Ruby bindings for wxWindows (aka wxWidgets)
 
+USE_DOS2UNIX=	*.t
 USE_ICONV=	yes
 USE_RUBY=	yes
 USE_RUBY_EXTCONF=	yes
@@ -33,7 +34,6 @@ WRKSRC=		${WRKDIR}/${DISTNAME}/src
 DOCS=		README README.linux ChangeLog
 
 post-patch:
-	@${FIND} ${WRKSRC} -name *.t | ${XARGS} ${REINPLACE_CMD} -e 's|
||'
 	@${REINPLACE_CMD} -E 's/ html(processor|window).o//' ${WRKSRC}/depend
 	@${REINPLACE_CMD} -e 's|wx-config|${WX_CONFIG:T}|' ${WRKSRC}/extconf.rb
 
-- 
1.8.1.3
--- 0010-all-Use-USE_DOS2UNIX-instead-of-manual-CRLF-conversi.patch ends here ---

--- dummy10 begins here ---
dummy file, because GNATS damages every other patch
--- dummy10 ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1U50Li-0002rA-Jx>