Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
c6e6771f
Commit
c6e6771f
authored
Jan 21, 2020
by
Jacek Caban
Committed by
Alexandre Julliard
Jan 23, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winegcc: Use Wine crt when linking builtin EXEs.
Signed-off-by:
Jacek Caban
<
jacek@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
bb9fb27b
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
10 additions
and
4 deletions
+10
-4
winegcc.c
tools/winegcc/winegcc.c
+10
-4
No files found.
tools/winegcc/winegcc.c
View file @
c6e6771f
...
...
@@ -384,7 +384,6 @@ static int try_link( const strarray *prefix, const strarray *link_tool, const ch
static
strarray
*
get_link_args
(
struct
options
*
opts
,
const
char
*
output_name
)
{
int
use_wine_crt
=
opts
->
wine_builtin
&&
opts
->
shared
;
strarray
*
link_args
=
get_translator
(
opts
);
strarray
*
flags
=
strarray_alloc
();
...
...
@@ -438,8 +437,8 @@ static strarray *get_link_args( struct options *opts, const char *output_name )
else
strarray_add
(
flags
,
opts
->
gui_app
?
"-mwindows"
:
"-mconsole"
);
if
(
opts
->
unicode_app
)
strarray_add
(
flags
,
"-municode"
);
if
(
opts
->
nodefaultlibs
||
use_wine_crt
)
strarray_add
(
flags
,
"-nodefaultlibs"
);
if
(
opts
->
nostartfiles
||
use_wine_crt
)
strarray_add
(
flags
,
"-nostartfiles"
);
if
(
opts
->
nodefaultlibs
||
opts
->
wine_builtin
)
strarray_add
(
flags
,
"-nodefaultlibs"
);
if
(
opts
->
nostartfiles
||
opts
->
wine_builtin
)
strarray_add
(
flags
,
"-nostartfiles"
);
if
(
opts
->
subsystem
)
strarray_add
(
flags
,
strmake
(
"-Wl,--subsystem,%s"
,
opts
->
subsystem
));
strarray_add
(
flags
,
"-Wl,--nxcompat"
);
...
...
@@ -1097,6 +1096,13 @@ static void build(struct options* opts)
{
if
(
opts
->
subsystem
&&
!
strcmp
(
opts
->
subsystem
,
"native"
))
entry_point
=
opts
->
target_cpu
==
CPU_x86
?
"_DriverEntry@8"
:
"DriverEntry"
;
else
if
(
opts
->
wine_builtin
&&
!
opts
->
shared
&&
!
opts
->
win16_app
)
{
if
(
opts
->
unicode_app
)
entry_point
=
opts
->
target_cpu
==
CPU_x86
?
"_wmainCRTStartup"
:
"wmainCRTStartup"
;
else
entry_point
=
opts
->
target_cpu
==
CPU_x86
?
"_mainCRTStartup"
:
"mainCRTStartup"
;
}
}
else
if
(
!
opts
->
shared
&&
opts
->
unicode_app
)
entry_point
=
"__wine_spec_exe_wentry"
;
...
...
@@ -1190,7 +1196,7 @@ static void build(struct options* opts)
/* link everything together now */
link_args
=
get_link_args
(
opts
,
output_name
);
if
((
opts
->
nodefaultlibs
||
opts
->
shared
)
&&
is_pe
)
if
((
opts
->
nodefaultlibs
||
opts
->
wine_builtin
)
&&
is_pe
)
{
libgcc
=
find_libgcc
(
opts
->
prefix
,
link_args
);
if
(
!
libgcc
)
libgcc
=
"-lgcc"
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment