blead 25801: Symbian batch of today
[p5sagit/p5-mst-13.2.git] / symbian / sdk.pl
CommitLineData
27da23d5 1use strict;
2
3my $SDK;
4my $WIN;
5
6if ($ENV{PATH} =~ m!\\Symbian\\(.+?)\\gcc\\bin!) {
7 my $cc = $1;
8 $WIN = $cc =~ m!_CW!i ? 'winscw' : 'wins';
9 $ENV{WIN} = $WIN;
10 if ($cc =~ m!Series60_v20!) {
11 $ENV{S60SDK} = '2.0';
12 } elsif ($cc =~ m!Series60_v21!) {
13 $ENV{S60SDK} = '2.1';
14 } elsif ($cc =~ m!S60_2nd_FP2!) {
15 $ENV{S60SDK} = '2.6';
16 }
17}
18
19if (open(GCC, "gcc -v 2>&1|")) {
20 while (<GCC>) {
21 if (/Reading specs from ((?:C:)?\\Symbian.+?)\\Epoc32\\/i) {
22 $SDK = $1;
23 # The S60SDK tells the Series 60 SDK version.
24 if ($SDK eq 'C:\Symbian\6.1\Shared') { # Visual C.
25 $SDK = 'C:\Symbian\6.1\Series60';
26 $ENV{S60SDK} = '1.2';
27 } elsif ($SDK eq 'C:\Symbian\Series60_1_2_CW') { # CodeWarrior.
28 $ENV{S60SDK} = '1.2';
29 }
30 last;
31 }
32 }
33 close GCC;
34} else {
35 die "$0: failed to run gcc: $!\n";
36}
37
38my $UARM = $ENV{UARM} ? $ENV{UARM} : "urel";
39my $UREL = "$SDK\\epoc32\\release\\-ARM-\\$UARM";
40if ($SDK eq 'C:\Symbian\6.1\Series60' && $ENV{WIN} eq 'winscw') {
41 $UREL = "C:\\Symbian\\Series60_1_2_CW\\epoc32\\release\\-ARM-\\urel";
42}
43$ENV{UREL} = $UREL;
44$ENV{UARM} = $UARM;
45
46die "$0: failed to locate the Symbian SDK\n" unless defined $SDK;
47
48$SDK;
c8f896e5 49
50# The following is a cheat sheet for the right S60/S80 SDK settings.
51#
52# set EPOC_BIN=%EPOCROOT%Epoc32\gcc\bin;%EPOCROOT%Epoc32\Tools
53# set MWCW=C:\Program Files\Metrowerks\CodeWarrior for Symbian OEM v2.8
54# set MSVC=C:\Program Files\Microsoft Visual Studio
55# set MSVC_BIN=%MSVC%\VC98\Bin;%MSVC%\Common\MSDev98\Bin
56# set MSVC_INC=%MSVC%\VC98\atl\include;%MSVC%\mfc\include;%MSVC%\include
57# set MSVC_LIB=%MSVC%\mfc\lib;%MSVC%\lib
58#
59# s60-1.2-cw:
60#
61# set EPOCROOT=\Symbian\Series60_1_2_CW\
62# set PATH=%EPOC_BIN%;%MSVC_BIN%;%MWCW%\Bin;%MWCW%\Symbian_Tools\Command_Line_Tools;%PATH%
63# set USERDEFS=%USERDEFS% -D__SERIES60_12__ -D__SERIES60_MAJOR__=1 -D__SERIES60_MINOR__=2 -D__SERIES60_1X__
64#
65# s60-1.2-vc:
66#
67# set EPOCROOT=\Symbian\6.1\Series60\
68# set PATH=\Symbian\6.1\Shared\Epoc32\gcc\bin;\Symbian\6.1\Shared\Epoc32\Tools;%MSVC_BIN%;%PATH%
69# set INCLUDE=%MSVC_INC%
70# set LIB=%MSVC_LIB%
71# set USERDEFS=%USERDEFS% -D__SERIES60_12__ -D__SERIES60_MAJOR__=1 -D__SERIES60_MINOR__=2 -D__SERIES60_1X__
72#
73# s60-2.0-cw:
74#
75# set EPOCROOT=\Symbian\7.0s\Series60_v20_CW\
76# set EPOCDEVICE=Series60_2_0_CW:com.Nokia.Series60_2_0_CW
77# set PATH=%EPOC_BIN%;%MWCW%\Bin;%MWCW%\Symbian_Tools\Command_Line_Tools;%PATH%
78# set USERDEFS=%USERDEFS% -D__SERIES60_20__ -D__SERIES60_MAJOR__=2 -D__SERIES60_MINOR__=0 -D__SERIES60_2X__
79#
80# s60-2.0-vc:
81#
82# set EPOCROOT=\Symbian\7.0s\Series60_v20\
83# set EPOCDEVICE=Series60_v20:com.nokia.series60
84# set PATH=%EPOC_BIN%;%MSVC_BIN%;%PATH%
85# set INCLUDE=%MSVC_INC%
86# set LIB=%MSVC_LIB%
87# set USERDEFS=%USERDEFS% -D__SERIES60_20__ -D__SERIES60_MAJOR__=2 -D__SERIES60_MINOR__=0 -D__SERIES60_2X__
88#
89# s60-2.1-cw:
90#
91# set EPOCROOT=\Symbian\7.0s\Series60_v21_CW\
92# set EPOCDEVICE=Series60_v21_CW:com.Nokia.series60
93# set PATH=%EPOC_BIN%;%MWCW%\Bin;%MWCW%\Symbian_Tools\Command_Line_Tools;%PATH%
94# set USERDEFS=%USERDEFS% -D__SERIES60_21__ -D__SERIES60_MAJOR__=2 -D__SERIES60_MINOR__=1 -D__SERIES60_2X__
95#
96# s60-2.6-cw:
97#
98# set EPOCROOT=\Symbian\8.0a\S60_2nd_FP2_CW\
99# set EPOCDEVICE=S60_2nd_FP2_CW:com.nokia.series60
100# set PATH=%EPOC_BIN%;%MWCW%\Bin;%MWCW%\Symbian_Tools\Command_Line_Tools;%PATH%
101# set USERDEFS=%USERDEFS% -D__SERIES60_26__ -D__SERIES60_MAJOR__=2 -D__SERIES60_MINOR__=6 -D__SERIES60_2X__ -D__BLUETOOTH_API_V2__
102#
103# s60-2.6-vc:
104#
105# set EPOCROOT=\Symbian\8.0a\S60_2nd_FP2\
106# set EPOCDEVICE=S60_2nd_FP2:com.nokia.Series60
107# set PATH=%EPOC_BIN%;%MSVC_BIN%;%PATH%
108# set INCLUDE=%MSVC_INC%
109# set LIB=%MSVC_LIB%
110# set USERDEFS=%USERDEFS% -D__SERIES60_26__ -D__SERIES60_MAJOR__=2 -D__SERIES60_MINOR__=6 -D__SERIES60_2X__ -D__BLUETOOTH_API_V2__
111#
112# s60-2.8-cw:
113#
114# set EPOCROOT=\Symbian\8.1a\S60_2nd_FP3\
115# set EPOCDEVICE=S60_2nd_FP3:com.nokia.series60
116# set PATH=%EPOC_BIN%;%MWCW%\Bin;%MWCW%\Symbian_Tools\Command_Line_Tools;%PATH%
117# set USERDEFS=%USERDEFS% -D__SERIES60_28__ -D__SERIES60_MAJOR__=2 -D__SERIES60_MINOR__=8 -D__SERIES60_2X__ -D__BLUETOOTH_API_V2__
118#
119# s80-2.0-cw:
120#
121# set EPOCROOT=\Symbian\7.0s\S80_DP2_0_SDK_CW\
122# set EPOCDEVICE=Series80_DP2_0_SDK_CW:com.nokia.Series80
123# set PATH=%EPOC_BIN%;%MWCW%\Bin;%MWCW%\Symbian_Tools\Command_Line_Tools;%PATH%
124# set USERDEFS=%USERDEFS% -D__SERIES80_20__ -D__SERIES80_MAJOR__=2 -D__SERIES80_MINOR__=0 -D__SERIES80_2X__
125#
126# s80-2.0-vc:
127#
128# set EPOCROOT=\Symbian\7.0s\S80_DP2_0_SDK\
129# set EPOCDEVICE=Series80_DP2_0_SDK:com.nokia.Series80
130# set PATH=%EPOC_BIN%;%MWCW%\Bin;%MWCW%\Symbian_Tools\Command_Line_Tools;%PATH%
131# set USERDEFS=%USERDEFS% -D__SERIES80_20__ -D__SERIES80_MAJOR__=2 -D__SERIES80_MINOR__=0 -D__SERIES80_2X__
132#
133# EOF
134