<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://reviewboard.asterisk.org/r/4064/">https://reviewboard.asterisk.org/r/4064/</a>
     </td>
    </tr>
   </table>
   <br />




<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Asterisk Developers.</div>
<div>By wdoekes.</div>








<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="https://issues.asterisk.org/jira/browse/ASTERISK-13797">ASTERISK-13797</a>


</div>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
Asterisk
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">(copied from the bug report)

The main Makefile has a target test called 'badshell' that tests if
DESTDIR does not happen to have an an-expanded tilde (~).  This might
be the case if you run:

    make install DESTDIR=~/somewhere/

and the shell wouldn't expand it as expected due to either bugs or
lack of features in it.  However for packaging the Debian package we
have, as part of the package name, 'dfsg' and sometimes also '~rcN'.


Basically: the current test matches ANY tilde in the filename, while
it only makes sense to match the first character.

This patch changes the badshell test to $(filter ~%,...) instead of
$(findstring ~,...) as suggested by Tilghman in 2009 (except we allow
~username as well).


Why in 1.8 and not in trunk? Because this is trivial and it saves the
debian guys another patch.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">$ make DESTDIR='~/somewhere' install
Your shell doesn't do ~ expansion when expected (specifically, when doing "make install DESTDIR=~/path").
Try replacing ~ with $HOME, as in "make install DESTDIR=$HOME/path".


$ make DESTDIR=~somewhere install
Your shell doesn't do ~ expansion when expected (specifically, when doing "make install DESTDIR=~/path").
Try replacing ~ with $HOME, as in "make install DESTDIR=$HOME/path".


$ make DESTDIR=~walter/test123 install
CC="cc" CXX="" LD="" AR="" RANLIB="" CFLAGS="" make -C menuselect CONFIGURE_SILENT="--silent" makeopts
make[1]: Entering directory `/home/walter/src/asterisk-1.8.x-WRITE/menuselect'
...
$ ls ~/test123/usr/sbin/asterisk 
/home/walter/test123/usr/sbin/asterisk


$ make DESTDIR=`pwd`/test123~123 install
CC="cc" CXX="" LD="" AR="" RANLIB="" CFLAGS="" make -C menuselect CONFIGURE_SILENT="--silent" makeopts
make[1]: Entering directory `/home/walter/src/asterisk-1.8.x-WRITE/menuselect'
...
$ ls test123~123/usr/sbin/asterisk 
test123~123/usr/sbin/asterisk</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>/branches/1.8/Makefile <span style="color: grey">(424940)</span></li>

</ul>

<p><a href="https://reviewboard.asterisk.org/r/4064/diff/" style="margin-left: 3em;">View Diff</a></p>







  </td>
 </tr>
</table>




  </div>
 </body>
</html>