--- a/windowing/windowserver/wins_switching/generate_stubs.pl Thu May 06 15:31:43 2010 +0100
+++ b/windowing/windowserver/wins_switching/generate_stubs.pl Thu May 06 15:42:13 2010 +0100
@@ -1,6 +1,6 @@
#!/bin/perl -w
-# Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+# Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies).
# All rights reserved.
# This component and the accompanying materials are made available
# under the terms of "Eclipse Public License v1.0"
@@ -15,11 +15,21 @@
# Description:
# Generates the ws32_stubs.h header file and the ws32switchU.def
# file from the ws322U def file.
-#
+#
#
use strict;
-my $COPYRIGHT = "Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).";
+
+my $COPYRIGHT = <<"EndCopyrightAndLicense";
+/*
+ * Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies).
+ * All rights reserved.
+ * This component and the accompanying materials are made available
+ * under the terms of "Eclipse Public License v1.0"
+ * which accompanies this distribution, and is available
+ * at the URL "http://www.eclipse.org/legal/epl-v10.html".
+ */
+EndCopyrightAndLicense
my $SOURCE_DEF_SIZE = 0;
my $WS32_DEF = "../BWINS/";
@@ -31,97 +41,96 @@
exit(0);
sub main() {
- my $maxOrdinal = 1;
- my $def2MaxOrdinal = 1;
+ my $maxOrdinal = 1;
+ my $def2MaxOrdinal = 1;
- $WS32_DEF .= $ARGV[0];
- $WS32SWITCH_HEADER = $ARGV[1];
- $WS32SWITCH_DEF .= $ARGV[2];
+ $WS32_DEF .= $ARGV[0];
+ $WS32SWITCH_HEADER = $ARGV[1];
+ $WS32SWITCH_DEF .= $ARGV[2];
- open DEF, $WS32_DEF or
- die "Cannot open $WS32_DEF\n";
+ open DEF, $WS32_DEF or
+ die "Cannot open $WS32_DEF\n";
+
-
- my ($dev, $ino, $mode, $nlink, $uid, $gid,
- $rdev, $size, $atime, $mtime, $ctime,
- $blksize, $blocks)
- = stat($WS32_DEF);
- # the file size could be checked by the switcher build to verify that the stub is up to date.
- $SOURCE_DEF_SIZE= $size;
-
- open HEADER_OUT, ">${WS32SWITCH_HEADER}" or
- die "Cannot create $WS32SWITCH_HEADER\n";
+ my ($dev, $ino, $mode, $nlink, $uid, $gid,
+ $rdev, $size, $atime, $mtime, $ctime,
+ $blksize, $blocks)
+ = stat($WS32_DEF);
+ # the file size could be checked by the switcher build to verify that the stub is up to date.
+ $SOURCE_DEF_SIZE= $size;
- open DEF_OUT, ">${WS32SWITCH_DEF}" or
- die "Cannot create $WS32SWITCH_DEF\n";
+ open HEADER_OUT, ">${WS32SWITCH_HEADER}" or
+ die "Cannot create $WS32SWITCH_HEADER\n";
+
+ open DEF_OUT, ">${WS32SWITCH_DEF}" or
+ die "Cannot create $WS32SWITCH_DEF\n";
- &printHeaderStart(\*HEADER_OUT);
- &printDefStart(\*DEF_OUT);
+ &printHeaderStart(\*HEADER_OUT);
+ &printDefStart(\*DEF_OUT);
- while (<DEF>) {
- chomp;
- if (/^\s+\?/) {
- if (s/.*;/;/) {
- &printDefEntry(\*DEF_OUT, $maxOrdinal, $_);
- &printHeaderEntry(\*HEADER_OUT,$maxOrdinal,$_);
- } else {
- &printDefEntry(\*DEF_OUT, $maxOrdinal, "");
- &printHeaderEntry(\*HEADER_OUT,$maxOrdinal, "(noname)");
- }
- $maxOrdinal++;
- }
- }
- &printHeaderEnd(\*HEADER_OUT,$maxOrdinal);
- &printDefEnd(\*DEF_OUT);
+ while (<DEF>) {
+ chomp;
+ if (/^\s+\?/) {
+ if (s/.*;/;/) {
+ &printDefEntry(\*DEF_OUT, $maxOrdinal, $_);
+ &printHeaderEntry(\*HEADER_OUT,$maxOrdinal,$_);
+ } else {
+ &printDefEntry(\*DEF_OUT, $maxOrdinal, "");
+ &printHeaderEntry(\*HEADER_OUT,$maxOrdinal, "(noname)");
+ }
+ $maxOrdinal++;
+ }
+ }
+ &printHeaderEnd(\*HEADER_OUT,$maxOrdinal);
+ &printDefEnd(\*DEF_OUT);
-
+
- close DEF;
- close HEADER_OUT;
- close DEF_OUT;
+ close DEF;
+ close HEADER_OUT;
+ close DEF_OUT;
}
sub printDefStart(\$) {
- my ($fh) = @_;
- print $fh "EXPORTS\n";
+ my ($fh) = @_;
+ print $fh "EXPORTS\n";
}
sub printDefEntry(\$\$\$) {
- my ($fh, $ordinal, $comment) = @_;
- print $fh "\tcall_vector_${ordinal} @ ${ordinal} NONAME $comment\n";
+ my ($fh, $ordinal, $comment) = @_;
+ print $fh "\tcall_vector_${ordinal} @ ${ordinal} NONAME $comment\n";
}
sub printDefEnd(\$) {
- my ($fh) = @_;
- print $fh "\n";
+ my ($fh) = @_;
+ print $fh "\n";
}
sub printHeaderStart(\$) {
- my ($fh) = @_;
+ my ($fh) = @_;
- print $fh "// Generated from \"$WS32_DEF\" file size: $SOURCE_DEF_SIZE\n" .
- "// $COPYRIGHT\n" .
- "\n" .
- "extern \"C\" {\n" .
- "void common_dispatch();\n" .
- "\n";
+ print $fh "$COPYRIGHT\n" .
+ "/* Generated from \"$WS32_DEF\" file size: $SOURCE_DEF_SIZE */\n\n" .
+ "extern \"C\" {\n" .
+ "void common_dispatch();\n" .
+ "\n";
}
sub printHeaderEntry(\$\$\$) {
- my ($fh, $ordinal, $comment) = @_;
+ my ($fh, $ordinal, $comment) = @_;
- print $fh "__declspec(dllexport)\n" .
- "__declspec(naked)\n" .
- "void call_vector_${ordinal} ()\n" .
- "\t{\n" .
- "\t// ${comment}\n" .
- "\t_asm mov eax, $ordinal\n" .
- "\t_asm jmp common_dispatch\n" .
- "\t}\n\n";
+ print $fh "__declspec(dllexport)\n" .
+ "__declspec(naked)\n" .
+ "void call_vector_${ordinal} ()\n" .
+ "\t{\n" .
+ "\t// ${comment}\n" .
+ "\t_asm mov eax, $ordinal\n" .
+ "\t_asm jmp common_dispatch\n" .
+ "\t}\n\n";
}
sub printHeaderEnd(\$\$) {
- my ($fh, $maxOrdinal) = @_;
- print $fh "}\n" .
- "#define MAX_ORDINAL $maxOrdinal\n\n";
+ my ($fh, $maxOrdinal) = @_;
+ print $fh "}\n" .
+ "#define MAX_ORDINAL $maxOrdinal\n\n";
}