Closed Bug 285177 Opened 19 years ago Closed 19 years ago

Preparing win32 tinderboxes for svg

Categories

(Webtools Graveyard :: Tinderbox, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: tor, Assigned: chase)

References

Details

The Mozilla SVG code requires GDI+, whose headers and .lib are not included
in the vs6 version used by the mozilla tinderboxes.  These can be obtained
from Microsoft, but only as part of a large Platform SDK download.

The easiest way of installing these is with IE.  Go to the following URL
and install the Core and Internet Development SDKs (the latter is needed
for the activex code):

  http://www.microsoft.com/msdownload/platformsdk/sdkupdate/

The build environment also needs to be modified slightly to pick up the
new SDK directories.  This is what I use:

set PATH=C:\Program Files\Microsoft SDK\bin;%PATH%
set INCLUDE=C:\Program Files\Microsoft SDK\include;%INCLUDE%
set LIB=C:\Program Files\Microsoft SDK\lib;%LIB%
These changes should be widely announced and the build requirements docs updated
before we do this on the tinderboxes.
Assignee: dbaron → chase
Build instructions were updated and the changes announced to the
build and win32 newsgroups on 2005-03-07.  No feedback.
beast is a Windows 2000 system.  The Core SDK states "(Windows Server 2003)"
which may refer to a minimum requirement for this SDK.  Anyone happen to know
for sure?

beast is the only Windows build system that needs to be SVG-enabled, right?
Status: NEW → ASSIGNED
I installed the 2003 sdk on the win2k tinderbox here without problems.

creature will need updating as well if it's running vc6.

Blocks: 122092
Flags: blocking-aviary1.1+
Flags: blocking1.8b2+
I added the Core and Internet Development SDKs to beast, configured the
environment variables as needed, and added --enable-svg to its Firefox trunk
mozconfig.  A release build should be available shortly.
What about enabling Canvas on Beast ?
(Bug 291765)
win32 tinderbox builds are working fine with SVG, I think this can be marked as
FIXED.


Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b2) Gecko/20050428
Firefox/1.0+
Resolved Fixed. Now we just need to get bug 286422 and we can land bug 122092.
Looks like chase is near ready on linux.
Status: ASSIGNED → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
This was only applied to Firefox, and not to the nightlies of Mozilla App Suite.
Do we need a separate bug for that ?

Can Chase automatically include enabling it for the other tinderboxes ?
The web page previously present at
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/ has been replaced
with a redirect to a new site and a new way to install the necessary SDK
packages.  In configuring a new build system, I used this new method to install
the "Windows Core SDK" but could not find "Windows Internet Development SDK" in
the installation list.  Nor after installing the core SDK would a build get past
the initial configure test of searching for Gdiplus.h.  The build stops with the
error:

configure: error: Building the SVG GDI+ renderer requires an appropriate
Microsoft SDK.

What is the recommended way to install the required SDKs on VS6 systems now that
there's a new method for getting those SDKs?
Their FAQ is vaguely worded, but seems to suggest that the new SDK only works
with .NET and 2003.

In case anyone is tempted to install the new SDK side by side with the older one
to experiment, be warned that the installer removes the older SDK without asking.
Indeed it appears the new SDK will not work with VC6.  If you build against it
(after adjusting for the different directory it installs in and the midl version
check balking), it fails trying to link with shell32.lib:

/cygdrive/c/home/moz/trunk/debug6-newsdk/../mozilla/build/cygwin-wrapper link /N
OLOGO /DLL /OUT:xpcom_core.dll /PDB:xpcom_core.pdb /SUBSYSTEM:WINDOWS  nsCOMPtr.
obj nsComponentManagerUtils.obj nsDebug.obj nsGenericFactory.obj nsIInterfaceReq
uestorUtils.obj nsMemory.obj nsTraceRefcnt.obj nsWeakReference.obj nsXPComInit.o
bj nsStringAPI.obj dlldeps.obj   ./module.res   /DEBUG /DEBUGTYPE:CV        ../.
./dist/lib/xpcomds_s.lib ../../dist/lib/xpcomio_s.lib ../../dist/lib/xpcomcompon
ents_s.lib ../../dist/lib/xpcomthreads_s.lib ../../dist/lib/xpcomproxy_s.lib ../
../dist/lib/xpcombase_s.lib ../../dist/lib/xptcall.lib ../../dist/lib/xptinfo.li
b ../../dist/lib/xpt.lib ../../dist/lib/xptcmd.lib ../../dist/lib/string_s.lib
  ../../dist/lib/nspr4.lib ../../dist/lib/plc4.lib ../../dist/lib/plds4.lib  she
ll32.lib ole32.lib uuid.lib version.lib imagehlp.lib kernel32.lib user32.lib gdi
32.lib winmm.lib wsock32.lib advapi32.lib
   Creating library xpcom_core.lib and object xpcom_core.exp
shell32.lib(shguid.obj) : fatal error LNK1103: debugging information corrupt; re
compile module
make[3]: *** [xpcom_core.dll] Error 79

I'd guess the libs in the new SDK have non-backwards-compatible debugging info.
yeah, the current platform sdk is incompatible with vc6 debug builds (should
work with release builds), see
http://blogs.msdn.com/michkap/archive/2005/04/27/412454.aspx (different context,
but information still applicable here, I assume)
Component: Tinderbox Configuration → Tinderbox
Flags: blocking1.8b2+
Flags: blocking-aviary1.5+
Product: mozilla.org → Webtools
Product: Webtools → Webtools Graveyard
You need to log in before you can comment on or make changes to this bug.