Closed Bug 333941 Opened 18 years ago Closed 18 years ago

fix mingw cross-compile & static builds

Categories

(Firefox Build System :: General, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.9alpha1

People

(Reporter: cls, Assigned: cls)

References

Details

(Keywords: fixed1.8.1)

Attachments

(2 files)

I managed to get ff, tb & sm building & running with cross-mingw again.
Attached patch v1Splinter Review
Standard stuff:
* Fix case in header includes
* Fix link order
* Add libraries to link lines (why are the standards libs for msvc listed in configure.in as well as a bunch of makefiles?)
* Fix paths in .rc files
* Fix __declspec declarations
Assignee: nobody → cls
Status: NEW → ASSIGNED
Attachment #218384 - Flags: review?(benjamin)
Comment on attachment 218384 [details] [diff] [review]
v1

>Index: browser/app/splash.rc

>-IDC_GRAB                CURSOR  DISCARDABLE     "..\\..\\widget\\src\\build\\res\\grab.cur"

>+IDC_GRAB                CURSOR  DISCARDABLE     "../../widget/src/build/res/grab.cur"

This works on MSVC still?

>Index: config/static-config.mk

>-STATIC_EXTRA_LIBS += $(call EXPAND_LIBNAME,comctl32 comdlg32 uuid shell32 ole32 oleaut32 version winspool)
>+STATIC_EXTRA_LIBS += $(call EXPAND_LIBNAME,comctl32 comdlg32 uuid shell32 ole32 oleaut32 version winspool imm32 winmm)

Do we need imm32 without cairo-gfx, or should it go with usp10 below?
Attachment #218384 - Flags: review?(benjamin) → review+
(In reply to comment #2)
> (From update of attachment 218384 [details] [diff] [review] [edit])
> >Index: browser/app/splash.rc
> 
> >-IDC_GRAB                CURSOR  DISCARDABLE     "..\\..\\widget\\src\\build\\res\\grab.cur"
> 
> >+IDC_GRAB                CURSOR  DISCARDABLE     "../../widget/src/build/res/grab.cur"
> 
> This works on MSVC still?

Unverified but widget/src/build/widget.rc uses unix paths without a problem so I don't see why the splash.rcs would be a problem.

> >Index: config/static-config.mk
> 
> >-STATIC_EXTRA_LIBS += $(call EXPAND_LIBNAME,comctl32 comdlg32 uuid shell32 ole32 oleaut32 version winspool)
> >+STATIC_EXTRA_LIBS += $(call EXPAND_LIBNAME,comctl32 comdlg32 uuid shell32 ole32 oleaut32 version winspool imm32 winmm)
> 
> Do we need imm32 without cairo-gfx, or should it go with usp10 below?

It's needed for the IME functionality used by widget.
Status: ASSIGNED → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9alpha
Only a subset of the changes are needed for the 1.8 branch.
Attachment #220666 - Flags: review?(benjamin)
Attachment #220666 - Flags: approval-branch-1.8.1?(benjamin)
Comment on attachment 220666 [details] [diff] [review]
for the 1.8 branch

Wait until after ff2a2 is out and the branch tree reopens to land this.
Attachment #220666 - Flags: review?(benjamin)
Attachment #220666 - Flags: review+
Attachment #220666 - Flags: approval-branch-1.8.1?(benjamin)
Attachment #220666 - Flags: approval-branch-1.8.1+
Keywords: fixed1.8.1
I checked in the following bustage fix to mozilla/config/static-config.mk, on the branch:
-STATIC_EXTRA_LIBS += urlmon
+STATIC_EXTRA_LIBS += -lurlmon
Last I checked, MSVC didn't understand the -lfoo syntax.  I checked in a fix to use EXPAND_LIBNAME instead.

(In reply to comment #7)
> Last I checked, MSVC didn't understand the -lfoo syntax.

Doh, you're right. Sorry about that.
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: