Perl Tipps und Tricks: Difference between revisions
From Lolly's Wiki
Jump to navigationJump to search
No edit summary |
No edit summary |
||
Line 11: | Line 11: | ||
push(@linestack, $whatever); # unread | push(@linestack, $whatever); # unread | ||
} | } | ||
</source> | |||
== Config == | |||
Override compile time flags on the commandline like this: | |||
<source lang=perl> | |||
PERL_MM_OPT='optimize=-O2 cc=gcc ld=gcc cccdlflags=-DPIC' | |||
</source> | |||
I used it to run sa-compile on Solaris: | |||
<source lang=perl> | |||
#!/bin/bash | |||
exec >> /var/log/update-spamd-rules.log 2>&1 | |||
#LD_LIBRARY_PATH=/usr/sfw/lib | |||
PATH=$PATH:/usr/local/bin:/opt/re2c/bin:/usr/sfw/bin:/usr/ccs/bin:/opt/csw/bin | |||
PERL_VER=$(/usr/perl5/bin/perl -e 'printf "%.3f",$];') | |||
SA_VER=$(/opt/spamassassin/bin/spamassassin -V | /usr/bin/nawk ' | |||
/SpamAssassin version/ { | |||
split($NF,version,/\./); | |||
printf "%d.%03d%03d",version[1],version[2],version[3]; | |||
}') | |||
export LD_LIBRARY_PATH PATH PERL_VER SA_VER | |||
/usr/perl5/bin/perlgcc -T /opt/spamassassin/bin/sa-update --updatedir=/var/opt/spamassassin/$SA_VER -D | |||
PERL_MM_OPT='optimize=-O2 cc=gcc ld=gcc cccdlflags=-DPIC' /opt/spamassassin/bin/sa-compile --updatedir=/var/opt/spamassassin/compiled/${PERL_VER}/${SA_VER} -D | |||
/usr/bin/kill -HUP `cat /tmp/spamd-exim-acl.pid` | |||
/usr/bin/kill -HUP `cat /tmp/spamd-ip.pid` | |||
</source> | </source> |
Revision as of 15:23, 22 June 2017
Unread while reading from filehandle
Dov Grobgeld made my day!
# Found at a comment of Dov Grobgeld at https://groups.google.com/d/msg/comp.lang.perl/7fPyGpWpP8M/hc7xTMvAoW0J
while($_ = shift(@linestack) || <IN>) {
:
push(@linestack, $whatever); # unread
}
Config
Override compile time flags on the commandline like this:
PERL_MM_OPT='optimize=-O2 cc=gcc ld=gcc cccdlflags=-DPIC'
I used it to run sa-compile on Solaris:
#!/bin/bash
exec >> /var/log/update-spamd-rules.log 2>&1
#LD_LIBRARY_PATH=/usr/sfw/lib
PATH=$PATH:/usr/local/bin:/opt/re2c/bin:/usr/sfw/bin:/usr/ccs/bin:/opt/csw/bin
PERL_VER=$(/usr/perl5/bin/perl -e 'printf "%.3f",$];')
SA_VER=$(/opt/spamassassin/bin/spamassassin -V | /usr/bin/nawk '
/SpamAssassin version/ {
split($NF,version,/\./);
printf "%d.%03d%03d",version[1],version[2],version[3];
}')
export LD_LIBRARY_PATH PATH PERL_VER SA_VER
/usr/perl5/bin/perlgcc -T /opt/spamassassin/bin/sa-update --updatedir=/var/opt/spamassassin/$SA_VER -D
PERL_MM_OPT='optimize=-O2 cc=gcc ld=gcc cccdlflags=-DPIC' /opt/spamassassin/bin/sa-compile --updatedir=/var/opt/spamassassin/compiled/${PERL_VER}/${SA_VER} -D
/usr/bin/kill -HUP `cat /tmp/spamd-exim-acl.pid`
/usr/bin/kill -HUP `cat /tmp/spamd-ip.pid`