summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authoraxis <qt-info@nokia.com>2009-12-11 09:28:42 (GMT)
committeraxis <qt-info@nokia.com>2009-12-11 10:27:15 (GMT)
commitf722cae67b412404d253b5794f638c271fb1eea8 (patch)
tree628c8ba0808b5ff987d36a74aca96c6fe281bd3a /bin
parentcca653230dd39b4202d6ca7dbe42c35f47958084 (diff)
downloadQt-f722cae67b412404d253b5794f638c271fb1eea8.zip
Qt-f722cae67b412404d253b5794f638c271fb1eea8.tar.gz
Qt-f722cae67b412404d253b5794f638c271fb1eea8.tar.bz2
Switched to using ABIv2 format to generate Symbian binaries.
This means using elf2e32 instead of elftran, and eliminates the need for generating exports manually.
Diffstat (limited to 'bin')
-rwxr-xr-xbin/makedeffile48
-rwxr-xr-xbin/makeexpfile39
-rwxr-xr-xbin/makeordinalmap58
3 files changed, 0 insertions, 145 deletions
diff --git a/bin/makedeffile b/bin/makedeffile
deleted file mode 100755
index e1534c4..0000000
--- a/bin/makedeffile
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/usr/bin/perl -w
-
-my $deffile = $ARGV[0];
-
-shift @ARGV;
-
-sub uniqueify {
- # String must be sorted beforehand.
- my $c;
- my $last = $_[0];
- for ($c = 1; $c < scalar(@_); $c++) {
- if ($_[$c] eq $last) {
- splice(@_, $c, 1);
- $c--;
- } else {
- $last = $_[$c];
- }
- }
-
- return @_;
-}
-
-my @exports;
-
-foreach (@ARGV) {
- my $file;
- open($file, "< $_") or die("Could not open $_");
- while (<$file>) {
- s/[\r\n]//g;
- push (@exports, $_);
- }
- close($file);
-}
-
-@exports = sort(@exports);
-
-@exports = uniqueify(@exports);
-
-open(HANDLE, "> $deffile");
-print (HANDLE "EXPORTS\n; NEW:\n");
-for (my $c = 0; $c < scalar(@exports); $c++) {
- if ($exports[$c] =~ /[ ]*([^ ]+)(.*)/) {
- print (HANDLE "\t$1 \@ " . ($c + 1) . " NONAME$2\n");
- }
-}
-print(HANDLE "\n");
-close(HANDLE);
-
diff --git a/bin/makeexpfile b/bin/makeexpfile
deleted file mode 100755
index 521791d..0000000
--- a/bin/makeexpfile
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/perl -w
-
-my $deffile = $ARGV[0];
-my $target = $ARGV[1];
-
-my @exports;
-open (HANDLE, "< $deffile") or die ("Could not open $deffile");
-while (<HANDLE>) {
- while (/(_Z[^ ]+)/xg) {
- push (@exports, $1);
- }
-}
-close(HANDLE);
-
-open(HANDLE, "> $target.s") or die("Could not open $target.s");
-print (HANDLE "\tEXPORT __DLL_Export_Table__\n\n");
-print (HANDLE "\tEXPORT |DLL##ExportTable|\n\n");
-print (HANDLE "\tEXPORT |DLL##ExportTableSize|\n\n");
-print (HANDLE "\tAREA ExportTable, CODE\n");
-print (HANDLE "__DLL_Export_Table__\n");
-print (HANDLE "\tBX lr\n");
-print (HANDLE "|DLL##ExportTableSize|\n");
-print (HANDLE "\tDCD " . scalar(@exports) . "\n");
-print (HANDLE "|DLL##ExportTable|\n");
-print (HANDLE "\tPRESERVE8\n\n");
-for (my $c = 0; $c < scalar(@exports); $c++) {
- print (HANDLE "\tIMPORT $exports[$c]\n");
- print (HANDLE "\tDCD $exports[$c] ; \@ ". ($c + 1) . "\n");
-}
-print (HANDLE "\n");
-print (HANDLE "\tAREA |.directive|, READONLY, NOALLOC\n");
-print (HANDLE "\tDCB \"#<SYMEDIT>#\\n\"\n");
-print (HANDLE "\tDCB \"EXPORT DLL##ExportTable\\n\"\n");
-print (HANDLE "\tDCB \"EXPORT DLL##ExportTableSize\\n\"\n");
-print (HANDLE "\tEND\n");
-close(HANDLE);
-
-my $result = system("armasm --apcs /inter -o $target $target.s");
-die("Could not execute armar") if ($result);
diff --git a/bin/makeordinalmap b/bin/makeordinalmap
deleted file mode 100755
index f81e1ee..0000000
--- a/bin/makeordinalmap
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/usr/bin/perl -w
-
-my $objects_dir = $ARGV[0];
-my $deffile = $ARGV[1];
-my $dllFile = $ARGV[2];
-my $target = $ARGV[3];
-
-my @exports;
-my @isData;
-open (HANDLE, "< $deffile") or die ("Could not open $deffile");
-while (<HANDLE>) {
- if (/([a-z0-9_]+)[ ]+\@/ixg) {
- push (@exports, $1);
- if (/\bDATA\b/x) {
- push (@isData, 1);
- } else {
- push (@isData, 0);
- }
- }
-}
-close(HANDLE);
-
-my @ordinalfiles;
-my $vtblExports;
-open($vtblExports, "> $objects_dir/VtblExports.s") or die("Could not open $objects_dir/VtblExports.s");
-print($vtblExports "\tAREA |.directive|, NOALLOC, READONLY, ALIGN=2\n");
-print($vtblExports "\tDCB \"#\<SYMEDIT\>#\\n\"\n");
-
-for (my $c = 1; $c < scalar(@exports) + 1; $c++) {
- my $symbol = $exports[$c - 1];
- my $genstubs;
- my $dllFileWithId = $dllFile;
- $dllFileWithId =~ s/^(.*)(\.dll)$/$1\{00010000\}\[e001b2dc\]$2/x;
- if ($isData[$c - 1]) {
- printf ($vtblExports "\tDCB \"IMPORT #<DLL>$dllFileWithId#<\\\\DLL>%x AS $symbol \\n\"\n", $c);
- } else {
- open ($genstubs, "| winewrapper genstubs.exe") or die ("Could not execute genstubs");
- printf ($genstubs "$objects_dir/ordinal-$c.o $symbol #<DLL>$dllFileWithId#<\\DLL>%x\n", $c);
- push (@ordinalfiles, "$objects_dir/ordinal-$c.o");
- close ($genstubs);
- }
-}
-
-print($vtblExports "\tEND\n");
-close($vtblExports);
-my $result = system("armasm --apcs /inter -o $objects_dir/VtblExports.o $objects_dir/VtblExports.s");
-die("Could not execute armar") if ($result);
-
-my $via;
-open ($via, "> $objects_dir/input.via") or die("Could not open $objects_dir/input.via");
-print ($via join("\n", @ordinalfiles));
-print ($via "\n$objects_dir/VtblExports.o\n");
-close($via);
-
-$result = system("armar --create $target --via $objects_dir/input.via");
-die("Could not execute armar") if ($result);
-
-exit 0