monit-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: hard coded locations for monitrc


From: Klaus Heinz
Subject: Re: hard coded locations for monitrc
Date: Sat, 28 Apr 2007 02:13:47 +0200

Jan-Henrik Haukeland wrote:
> >If you can change your patch to include patching of monit.pod from  
> >configure via a new monit.pod.in file and also keep the hardcoded / 
> >usr/local/etc as mentioned by Martin it would be great.
> 
> That is, monit.pod should be replaced by monit.pod.in in the CVS and  
> I also agree that as long as SYSCONFDIR defaults to /usr/local/etc it  
> is sufficient.

I have deviated from your suggestion to create "monit.pod.in", because you
said in an earlier message:

JHH:  Not necessarily since the man file could be built during creation of
JHH:  the dist. However, this is internal stuff and not something we want
JHH:  to expose in a dist.

Shipping "monit.pod.in" and letting configure (as run by the user)
replace @sysconfdir@ would just expose what you want to hide.

Implemented by the appended patches, the configure script the end user
is running will not use pod2man (and thus need Perl) but simply replace
@sysconfdir@ in "monit.1.in".
By the way, the same reasons for creating "monit.1.in" apply to
"doc/monit.html.in" (instead of "doc/monit.html"), something I overlooked
last week.

The patches against the current CVS version of monit work the following
way:

- patch-bi: "monit.pod" from CVS is patched to contain "@sysconfdir@" instead
  of the hardcoded path "/usr/local/etc"

- patch-bj: "monit.1.in" is created from "monit.pod" by make_man and
  included in the archive.

- patch-bk: make_dist calls make_man and also creates "monit.html.in"
  before the first run of configure through autogen.sh to avoid warning
  messages about missing files.

- patch-ac: In "Makefile.in" address@hidden@ will be defined for
  the pre-processor.

- patch-ad: In "file.c" the macro SYSCONFDIR is used instead of a
  hardcoded path.

- patch-ag: "configure.ac" is modified to replace @sysconfdir@ in
  "monit.1.in" and "monit.html.in".

make_man and make_dist specify /bin/bash as the shell interpreter. I
took the liberty to change this to /bin/sh since both scripts seem to be
simple enough not to need bash-specific features. NetBSD's /bin/sh
worked fine for both.

With the appended patches applied I was able to successfully build and
run monit on NetBSD/i386 3.1 and Debian Sarge.

ciao
     Klaus

Attachment: patch-bi
Description: Text document

Attachment: patch-bj
Description: Text document

Attachment: patch-bk
Description: Text document

Attachment: patch-ac
Description: Text document

Attachment: patch-ad
Description: Text document

Attachment: patch-ag
Description: Text document


reply via email to

[Prev in Thread] Current Thread [Next in Thread]