Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??


This is so far I have come.

Problems calling dmake from within Emacs

Emacs in Windows replaces at start up the environment variable SHELL to something like "C:/Program Files (x86)/GNU Emacs 23.4/bin/cmdproxy.exe". Processes started by Emacs will inherit this value.

Starting dmake from within emacs results in that dmake uses the cmdproxy.exe as shell. The logic in the start-up files of dmake (when SHELL is "C:/Program Files (x86)/GNU Emacs 23.4/bin/cmdproxy.exe") configure dmake for using a Kornshell compatible shell.

Cmdproxy.exe sometimes does not like all the arguments and issues messages like "warning: extra args ignored after '-e'". It also truncates the command. The results of using cmdproxy.exe as SHELL are unexpected and errors are difficult to find. Sometimes the Windows command shell is started in interactive mode and the action initiated by (compile "dmake" nil) is stuck.

I have filed a bug: The bug report has been left without action.

Runtime check in generated Makefile

Have learnt that ExtUtils::MakeMaker has limited GNU Make support on Windows. See also:

I have tried to find "portable" makefile idioms to:

  • Find which make program is used
  • Give an error message and stop the make program
Portable means here they can be used by many make programs like GNU Make, dmake, nmake and more.

Example of Makefile idiom to find which make program is used are:

ifeq "{xxx}" "xxx" MAKE_USED = dmake endif ifneq "$(.VARIABLES)" "" MAKE_USED = gnumake endif #if... How can nmake be identified? #MAKE_USED = nmake #endif

To generate an error message and stop GNU Make is straight forward:

NORL =@# No Output of Recipe Line .PHONY: check_used_make_program check_used_make_program: ifeq "$(MAKE_USED)" "gnumake" $(NORL)$(error ERROR: Using $(MAKE_USED) for a Makefile intended f +or ?make) endif
I have not found any better way to give a message and stop dmake than:
ifeq "$(MAKE_USED)" "dmake" # The message is NOT sent to STDERR $(NORL)echo ERROR: Using $(MAKE_USED) for a Makefile intended for +?make $(assign ERR OR = ERROR) #Generates an error message endif

In reply to Re: Ideas on more foolproof Makefile.PL and generated Makefile by bojinlund
in thread Ideas on more foolproof Makefile.PL and generated Makefile by bojinlund

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    and all is quiet...

    How do I use this? | Other CB clients
    Other Users?
    Others drinking their drinks and smoking their pipes about the Monastery: (10)
    As of 2018-06-22 18:26 GMT
    Find Nodes?
      Voting Booth?
      Should cpanminus be part of the standard Perl release?

      Results (124 votes). Check out past polls.