Acme-Alien-DontPanic

 view release on metacpan or  search on metacpan

LICENSE  view on Meta::CPAN


    b) cause the whole of any work that you distribute or publish, that
    in whole or in part contains the Program or any part thereof, either
    with or without modifications, to be licensed at no charge to all
    third parties under the terms of this General Public License (except
    that you may choose to grant warranty protection to some or all
    third parties, at your option).

    c) If the modified program normally reads commands interactively when
    run, you must cause it, when started running for such interactive use
    in the simplest and most usual way, to print or display an
    announcement including an appropriate copyright notice and a notice
    that there is no warranty (or else, saying that you provide a
    warranty) and that users may redistribute the program under these
    conditions, and telling the user how to view a copy of this General
    Public License.

    d) You may charge a fee for the physical act of transferring a
    copy, and you may at your option offer warranty protection in
    exchange for a fee.

Makefile.PL  view on Meta::CPAN

BEGIN {
  use strict; use warnings;
  my %missing = map {
    eval qq{ require $_ };
    $@ ? ($_=>1) : ()
  } qw( Data::Dumper base strict warnings );
  if(%missing)
  {
    print "Your Perl is missing core modules: @{[ sort keys %missing ]}\n";
    print "Ideally if you are using the system Perl you can install the appropriate\n";
    print "package which includes the core Perl modules.  On at least some versions\n";
    print "of Fedora, CentOS and RHEL, this is the `perl-core` package.\n";
    print "\n";
    print " % dnf install perl-core\n";
    print "   ~ or ~\n";
    print " % yum install perl-core\n";
    print "\n";
    print "If you really want to install dual-life modules from CPAN, then you can\n";
    print "use cpanm:\n";
    print "\n";
    print " % cpanm @{[ sort keys %missing ]}\n";
    print "\n";
    print "Note that some core modules are not available from CPAN.\n";
    exit;
  }
}
BEGIN {
  use strict; use warnings;
  if($^O eq 'midnightbsd')
  {
    print "Sorry, MidnightBSD is not supported.\n";
    print "See:\n";
    print "https://github.com/PerlAlien/Alien-Base-Extras/issues/4\n";
    print "pull requests to fix this are welcome.\n";
    print "OS Unsupported\n";
    exit;
  }
  unless(eval q{ use 5.006; 1}) {
    print "Perl 5.006 or better required\n";
    exit;
  }
}
# This file was automatically generated by Dist::Zilla::Plugin::Author::Plicease::MakeMaker v2.72.
use strict;
use warnings;
use 5.006;
use ExtUtils::MakeMaker;

my %WriteMakefileArgs = (

dist.ini  view on Meta::CPAN

workflow = linux

alien_name                = dontpanic
alien_isolate_dynamic     = 1
alien_repo                = https://alienfile.org/dontpanic/
alien_pattern             = .*/([\d\.]+)\.tar\.gz
alien_inline_auto_include = libdontpanic.h

preamble = | if($^O eq 'midnightbsd')
preamble = | {
preamble = |   print "Sorry, MidnightBSD is not supported.\n";
preamble = |   print "See:\n";
preamble = |   print "https://github.com/PerlAlien/Alien-Base-Extras/issues/4\n";
preamble = |   print "pull requests to fix this are welcome.\n";
preamble = |   print "OS Unsupported\n";
preamble = |   exit;
preamble = | }

diag_preamble = | $post_diag = sub {
diag_preamble = | use Test::Alien::Diag qw( alien_diag );
diag_preamble = | use Acme::Alien::DontPanic;
diag_preamble = | alien_diag 'Acme::Alien::DontPanic';
diag_preamble = | };

[AlienBuild]

maint/release  view on Meta::CPAN

{
  my @lines = path('dist.ini')->lines;

  for(@lines)
  {
    if(/^version\s*=\s*(.*)\s*$/)
    {
      my $old = $1;
      my $new = Alien::Build->VERSION . '00';
      s/$old/$new/;
      print " version $old -> $new\n";
      if($old eq $new)
      {
        die "seems to be the same version";
      }
    }
    elsif(/^Alien::Build\s*=\s*(.*)\s*$/)
    {
      my $old = $1;
      my $new = Alien::Build->VERSION;
      print " ab      $old   -> $new\n";
      s/$old/$new/;
    }
    elsif(/^Alien::Base\s*=\s*(.*)\s*$/)
    {
      my $old = $1;
      my $new = Alien::Base->VERSION;
      print " ab      $old   -> $new\n";
      s/$old/$new/;
    }
  }

  path('dist.ini')->spew(@lines);
}

{
  my @lines = path('Changes')->lines;

maint/release  view on Meta::CPAN

  my $next  = shift @lines;

  unshift @lines, $title, $blank, $next,
    "  - Require Alien::Build @{[ Alien::Build->VERSION ]}\n";

  path('Changes')->spew(@lines);
}

system 'git', 'diff';

print "does that look right? ";

my $input = <STDIN>;

die 'not right apparently' unless $input =~ /^y/i;

sub run
{
  print "+@_\n";
  system @_;
  die if $?;
}

run 'dzil', 'release';
run 'cpanm', "Acme-Alien-DontPanic-@{[ Alien::Build->VERSION . '00' ]}.tar.gz";

t/00_diag.t  view on Meta::CPAN

  elsif($ENV{PERLLIB})
  {
    spacer;
    diag "PERLLIB path";
    diag $_ for split $Config{path_sep}, $ENV{PERLLIB};
  }

  spacer;
}

diag sprintf $format, 'perl', "$] $^O $Config{archname}";

foreach my $module (sort @modules)
{
  my $pm = "$module.pm";
  $pm =~ s{::}{/}g;
  if(eval { require $pm; 1 })
  {
    my $ver = eval { $module->VERSION };
    $ver = 'undef' unless defined $ver;
    diag sprintf $format, $module, $ver;
  }
  else
  {
    diag sprintf $format, $module, '-';
  }
}

if($post_diag)
{
  spacer;
  $post_diag->();
}

spacer;

t/inline.t  view on Meta::CPAN

done_testing;

__DATA__
__C__

#include <stdio.h>

char *string_answer()
{
  static char buffer[1024];
  sprintf(buffer, "the answer to life the universe and everything is %d", answer());
  return buffer;
}

extern int answer();

t/inline_cpp.t  view on Meta::CPAN

__DATA__
__CPP__

#include <stdio.h>

class Foo {
public:
  char *string_answer()
  {
    static char buffer[1024];
    sprintf(buffer, "the answer to life the universe and everything is %d", answer());
    return buffer;
  }
};

extern int answer();



( run in 0.475 second using v1.01-cache-2.11-cpan-de7293f3b23 )