Commit 30e89d0a authored by unknown's avatar unknown
Browse files

Merge mysql.com:/home/wax/mysql/mysql-4.1

into mysql.com:/home/wax/mysql/mysql-4.1test2

parents f6843329 a7325649
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@ purifying_binaries ()
    if [ -n "$cxxfilt" ] ; then
      opts="$opts -demangle-program=$cxxfilt"
    fi
    opts="$opts -best-effort g++"
    opts="$opts -best-effort"

    back=`pwd`
    cd $dir
@@ -76,17 +76,17 @@ purifying_binaries ()
    fi

    if [ -n "$mode" -a $mode = purify ] ; then
      gmake CXXLD="purify   $opts"  $target
      gmake CCLD="purify   $opts gcc"  CXXLD="purify   $opts g++"  $target
      mv $binary $binary-purify
    fi

    if [ -n "$mode" -a $mode = quantify ] ; then
      gmake CXXLD="quantify $opts"  $target
      gmake CCLD="quantify $opts gcc"  CXXLD="quantify $opts g++"  $target
      mv $binary $binary-quantify
    fi

    if [ -n "$mode" -a $mode = purecov ] ; then
      gmake CXXLD="purecov  $opts"  $target
      gmake CCLD="purecov  $opts gcc"  CXXLD="purecov  $opts g++"  $target
      mv $binary $binary-purecov
    fi

+2 −0
Original line number Diff line number Diff line
@@ -119,6 +119,7 @@ miguel@light.
miguel@light.local
miguel@sartre.local
mikael@mc04.(none)
mikael@orca.ndb.mysql.com
mikron@c-fb0ae253.1238-1-64736c10.cust.bredbandsbolaget.se
mikron@mikael-ronstr-ms-dator.local
mleich@mysql.com
@@ -180,6 +181,7 @@ ram@gw.mysql.r18.ru
ram@gw.udmsearch.izhnet.ru
ram@mysql.r18.ru
ram@ram.(none)
ramil@mysql.com
ranger@regul.home.lan
rburnett@build.mysql.com
reggie@bob.(none)
+1 −1
Original line number Diff line number Diff line
@@ -214,7 +214,7 @@ if (-d $target_dir)
		@stat= stat("$target_dir/configure.in");
		my $mtime= $stat[9];
		my ($sec,$min,$hour,$mday,$mon,$year) = localtime($mtime);
		my $mtime= sprintf("%04d%-02d-%02d-%02d:%02d", $year+1900, $mon+1, $mday, $hour, $min);
		my $mtime= sprintf("%04d-%02d-%02d-%02d:%02d", $year+1900, $mon+1, $mday, $hour, $min);

		&logger("Renaming $target_dir to $target_dir-$mtime");
		$command= "mv ";
+18 −8
Original line number Diff line number Diff line
@@ -7,7 +7,7 @@ use Sys::Hostname;
@config_options= ();
@make_options= ();

$opt_distribution=$opt_user=$opt_config_env=$opt_config_extra_env="";
$opt_comment=$opt_distribution=$opt_user=$opt_config_env=$opt_config_extra_env="";
$opt_dbd_options=$opt_perl_options=$opt_config_options=$opt_make_options=$opt_suffix="";
$opt_tmp=$opt_version_suffix="";
$opt_bundled_zlib=$opt_help=$opt_delete=$opt_debug=$opt_stage=$opt_no_test=$opt_no_perl=$opt_one_error=$opt_with_low_memory=$opt_fast_benchmark=$opt_static_client=$opt_static_server=$opt_static_perl=$opt_sur=$opt_with_small_disk=$opt_local_perl=$opt_tcpip=$opt_build_thread=$opt_use_old_distribution=$opt_enable_shared=$opt_no_crash_me=$opt_no_strip=$opt_with_archive=$opt_with_cluster=$opt_with_csv=$opt_with_example=$opt_with_debug=$opt_no_benchmark=$opt_no_mysqltest=$opt_without_embedded=$opt_readline=0;
@@ -17,6 +17,7 @@ GetOptions(
	"bdb",
	"build-thread=i",
	"bundled-zlib",
	"comment=s",
	"config-env=s" => \@config_env,
	"config-extra-env=s" => \@config_extra_env,
	"config-options=s" => \@config_options,
@@ -110,6 +111,7 @@ $log="$pwd/Logs/$host-$major.$minor$opt_version_suffix.log";
$opt_distribution =~ /(mysql[^\/]*)\.tar/;
$ver=$1;
$gcc_version=which("gcc");
$opt_comment= "Official MySQL$opt_version_suffix binary" unless $opt_comment;
if (defined($gcc_version) && ! $opt_config_env)
{
  $tmp=`$gcc_version -v 2>&1`;
@@ -303,7 +305,7 @@ if ($opt_stage <= 1)
  }

  $prefix="/usr/local/mysql";
  check_system("$opt_config_env ./configure --prefix=$prefix --localstatedir=$prefix/data --libexecdir=$prefix/bin --with-comment=\"Official MySQL$opt_version_suffix binary\" --with-extra-charsets=complex --with-server-suffix=\"$opt_version_suffix\" --enable-thread-safe-client --enable-local-infile $opt_config_options","Thank you for choosing MySQL");
  check_system("$opt_config_env ./configure --prefix=$prefix --localstatedir=$prefix/data --libexecdir=$prefix/bin --with-comment=\"$opt_comment\" --with-extra-charsets=complex --with-server-suffix=\"$opt_version_suffix\" --enable-thread-safe-client --enable-local-infile $opt_config_options","Thank you for choosing MySQL");
  if (-d "$pwd/$host/include-mysql")
  {
    safe_system("cp -r $pwd/$host/include-mysql/* $pwd/$host/$ver/include");
@@ -530,6 +532,10 @@ When running several Do-compile runs in parallel, each build
should have its own thread ID, so running the test suites
does not cause conflicts with duplicate TCP port numbers.

--comment=<comment>
Replace the default compilation comment that is embedded into
the mysqld binary.

--config-env=<environment for configure>
To set up the environment, like 'CC=cc CXX=gcc CXXFLAGS=-O3'

@@ -684,16 +690,20 @@ sub abort

  if ($opt_user)
  {
    $mail_header_file="$opt_tmp/do-command.$$";
    open(TMP,">$mail_header_file");
    # Take the last 40 lines of the build log
    open(LOG, "$log") or die $!;
    my @log= <LOG>;
    close LOG;
    splice @log => 0, -40;
    my $mail_file="$opt_tmp/do-command.$$";
    open(TMP,">$mail_file") or die $!;
    print TMP "From: mysqldev\@$full_host_name\n";
    print TMP "To: $email\n";
    print TMP "Subject: $host($uname): $ver$opt_version_suffix compilation failed\n\n";
    print TMP @log;
    close TMP;
    system("tail -n 40 $log > $log.mail");
    system("cat $mail_header_file $log.mail | $sendmail -t -f $email");
    unlink($mail_header_file);
    unlink("$log.mail");
    system("$sendmail -t -f $email < $mail_file");
    unlink($mail_file);
  }
  exit 1;
}
+183 −0
Original line number Diff line number Diff line
#!/usr/bin/perl
#
# Script to create Solaris packages
#
$INTERACTIVE= 0;
chomp ($hostname= `hostname`);
$find = "/usr/bin/find";
$pkgproto = "/usr/bin/pkgproto";
$pkgmk = "/usr/bin/pkgmk -o";
$pkgtrans = "/usr/bin/pkgtrans";
$temp = "/tmp/prototype$$";
$prototype = "prototype";
$pkginfo = "pkginfo";
($gid ,$pkg ,$uid ,$userInfo ,$email ,$quota ,$group ,$passwd
,$category ,$userHome ,$vendor ,$loginShell ,$pstamp ,$basedir)=();

$fullname = shift @ARGV;
$fullname or die "No package name was specified";
-d $fullname or die "That directory is not present!";

$fullname =~ s,/+$,,;             # Remove ending slash if any

$pkgdir= `cd ../$hostname; pwd`;
$pwd = `pwd`;
if ($pwd =~ '\/usr\/local') {
        $pwd = $`;
}
die  "Wrong location, please cd to <PKGBASE>/usr/local/ and run again.\n"
    	if ($pwd eq "");

system  ("$find . -print | $pkgproto > $temp");
open (PREPROTO,"<$temp") or die "Unable to read prototype information ($!)\n";
open (PROTO,">$prototype") or die "Unable to write file prototype ($!)\n";
print PROTO "i pkginfo=./$pkginfo\n";
while (<PREPROTO>) {
        # Read the prototype information from /tmp/prototype$$
        chomp;
        $thisline = $_;
        if ($thisline =~ " prototype "
         or $thisline =~ " pkginfo ") {
          # We don't need that line
        } elsif ($thisline =~ "^[fd] ") {
          # Change the ownership for files and directories
          ($dir, $none, $file, $mode, $user, $group) = split / /,$thisline;
          print PROTO "$dir $none $file $mode bin bin\n";
        } else {
          # Symlinks and other stuff should be printed as well ofcourse
          print PROTO "$thisline\n";
        }
}
close PROTO;
close PREPROTO;

# Clean up
unlink $temp or warn "Unable to remove tempfile ($!)\n";

# Now we can start building the package
#
# First get some info

$fullname =~ /^((mysql)-.+)-([\d\.]+)-.+$/
  or die "This name is not what I expected - \"$fullname\"";

$default{"name"}= $2;
$default{"version"}= $3;
$default{"pkg"}= $1;
$default{"arch"} = `uname -m`;
chomp $default{"arch"};
$default{"category"}= "application";
$default{"vendor"}= "MySQL AB";
$default{"email"}= "build\@mysql.com";
$default{"pstamp"}= "MySQL AB Build Engineers";
$os = `uname -r`;
$os =~ '\.';
$os = "sol$'";
chomp $os;
$default{"basedir"}= "/usr/local";
$default{"packagename"}= "${fullname}.pkg";

# Check for correctness of guessed values by userinput

%questions = (
  pkg => "Please give the name for this package",
  name => "Now enter the real name for this package",
  arch => "What architecture did you build the package on?",
  version => "Enter the version number of the package",
  category => "What category does this package belong to?",
  vendor => "Who is the vendor of this package?",
  email => "Enter the email adress for contact",
  pstamp => "Enter your own name",
  basedir => "What is the basedir this package will install into?",
  packagename => "How should I call the packagefile?",
);

@vars = qw(pkg name arch version category vendor email pstamp basedir
    	   packagename);
foreach $varname (@vars) {
        getvar_noq($varname);
}

if ($INTERACTIVE) {
  while (!&chkvar()) {
    print "\n";
    foreach $varname (@vars) {
      getvar($varname);
    }
    @vars = qw(pkg name arch version category vendor email pstamp basedir
    	   packagename);
  }
}
$classes = "none";

# Create the pkginfo file

print "\nNow creating $pkginfo file\n";
open (PKGINFO,">$pkginfo") || die "Unable to open $pkginfo for writing ($!)\n";
print PKGINFO "PKG=\"$pkg\"\n";
print PKGINFO "NAME=\"$name\"\n";
print PKGINFO "ARCH=\"$arch\"\n";
print PKGINFO "VERSION=\"$version\"\n";
print PKGINFO "CATEGORY=\"$category\"\n";
print PKGINFO "VENDOR=\"$vendor\"\n";
print PKGINFO "EMAIL=\"$email\"\n";
print PKGINFO "PSTAMP=\"$pstamp\"\n";
print PKGINFO "BASEDIR=\"$basedir\"\n";
print PKGINFO "CLASSES=\"$classes\"\n";
close PKGINFO;
print "Done.\n";

# Build and zip the package

print "Building package\n";
system ("$pkgmk -r `pwd`");
system ("(cd /var/spool/pkg; $pkgtrans -s -o `pwd` /tmp/$packagename $pkg)");
system ("gzip /tmp/$packagename");

# Clean-up the spool area
system ("(cd /var/spool/pkg; rm -rf $pkg)");
# Clean-up the ~/packaging/ area
system ("(rm -rf mysql*)");
unlink $pkginfo;
unlink $prototype;
system ("mv /tmp/${packagename}.gz $pkgdir");
print "Done. (~/$hostname/$packagename.gz)\n";
# The subroutines
sub chkvar {
  print "\n";

  print "PKG=$pkg\n";
  print "NAME=$name\n";
  print "ARCH=$arch\n";
  print "VERSION=$version\n";
  print "CATEGORY=$category\n";
  print "VENDOR=$vendor\n";
  print "EMAIL=$email\n";
  print "PSTAMP=$pstamp\n";
  print "BASEDIR=$basedir\n";
  print "PACKAGENAME=$packagename\n";

  
  print "\nIs this information correct? [Y/n]: ";
  my $answer= <STDIN>;
  chomp $answer;
  $answer= 'Y' if ($answer eq "");
  $answer= uc $answer;
  my $res= ($answer eq 'Y')? 1 : 0;
  return($res);
}

sub getvar_noq {
        my $questionname = "@_";
        $$questionname = $default{$questionname};
}

sub getvar {
        my $questionname = "@_";
        my $ucquestionname= uc $questionname;
        print "$ucquestionname: $questions{$questionname} [$default{\"$questionname\"}]: ";
        my $answer = <STDIN>;
        chomp $answer;
        $$questionname = $answer;
        $$questionname = $default{$questionname} if ($$questionname eq "");
}
Loading