[MacPorts] #43145: Perl PortGroup fails to reinplace non-ascii Makefiles

MacPorts noreply at macports.org
Tue Apr 1 23:53:35 PDT 2014


#43145: Perl PortGroup fails to reinplace non-ascii Makefiles
-----------------------------------+--------------------------------
  Reporter:  mojca@…               |      Owner:  macports-tickets@…
      Type:  defect                |     Status:  new
  Priority:  Normal                |  Milestone:
 Component:  ports                 |    Version:  2.2.1
Resolution:                        |   Keywords:
      Port:  p5-test-base p5-yaml  |
-----------------------------------+--------------------------------

Comment (by and.damore@…):

 Replying to [comment:6 jmr@…]:
 > The nicest solution would be to iconv the Makefile.PL to UTF-8 first so
 any info that ends up being installed doesn’t have a weird encoding.

 I'm not sure that this would help since Pod::Man needs a specific flag to
 enable utf8 and seems that ExtUtils::MakeMaker isn't passing it when
 calling Pod::Man. Also you'd need to specify the =encoding in the
 temporary produced POD file.

 {{{
 utf8
 By default, Pod::Man produces the most conservative possible *roff output
 to try to ensure that it will work with as many different *roff
 implementations as possible.
 […]
 Be aware that, when using this option, the input encoding of your POD
 source must be properly declared unless it is US-ASCII or Latin-1. POD
 input without an =encoding command will be assumed to be in Latin-1, and
 if it's actually in UTF-8, the output will be double-encoded.
 }}}


 > But in any case, this is the exact reason why reinplace has a -locale
 flag.

 Correct, so we could specify a ''perl5.reinplace_locale'' variable and
 pass that.

 Since the post-configure is traversing the filesystem checking for all
 "Makefile" named files and the encoding isn't necessarily the same for all
 files I think that this ''reinplace_locale'' should be a structure of
 {{file_name file_locale} …} couples that should  be parsed per each file.



 Replying to [comment:8 jmr@…]:
 > If the output is always Latin 1, that at least makes it easy to pass the
 right locale to reinplace.

 The output could be plain ASCII (but I guess that wouldn't be a problem),
 but not all modules use ExtUtiles::MakeMaker, I've seen at least on
 Makefile.PL directly generating the Makefile.

-- 
Ticket URL: <https://trac.macports.org/ticket/43145#comment:9>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list