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
ded2e82f
Commit
ded2e82f
authored
Jun 04, 2019
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winebuild: Don't even try to resolve imports for PE builds.
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
7ac6cdfa
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
12 additions
and
34 deletions
+12
-34
build.h
tools/winebuild/build.h
+0
-1
import.c
tools/winebuild/import.c
+1
-0
main.c
tools/winebuild/main.c
+7
-11
spec16.c
tools/winebuild/spec16.c
+2
-3
spec32.c
tools/winebuild/spec32.c
+2
-19
No files found.
tools/winebuild/build.h
View file @
ded2e82f
...
...
@@ -306,7 +306,6 @@ extern int load_res32_file( const char *name, DLLSPEC *spec );
extern
void
output_resources
(
DLLSPEC
*
spec
);
extern
void
output_bin_resources
(
DLLSPEC
*
spec
,
unsigned
int
start_rva
);
extern
void
output_spec32_file
(
DLLSPEC
*
spec
);
extern
void
output_pe_module
(
DLLSPEC
*
spec
);
extern
void
output_fake_module
(
DLLSPEC
*
spec
);
extern
void
output_def_file
(
DLLSPEC
*
spec
,
int
include_stubs
);
extern
void
load_res16_file
(
const
char
*
name
,
DLLSPEC
*
spec
);
...
...
tools/winebuild/import.c
View file @
ded2e82f
...
...
@@ -1311,6 +1311,7 @@ void output_stubs( DLLSPEC *spec )
/* output the import and delayed import tables of a Win32 module */
void
output_imports
(
DLLSPEC
*
spec
)
{
if
(
target_platform
==
PLATFORM_WINDOWS
)
return
;
output_immediate_imports
();
output_delayed_imports
(
spec
);
output_immediate_import_thunks
();
...
...
tools/winebuild/main.c
View file @
ded2e82f
...
...
@@ -630,26 +630,22 @@ int main(int argc, char **argv)
/* fall through */
case
MODE_EXE
:
load_resources
(
argv
,
spec
);
load_import_libs
(
argv
);
if
(
spec_file_name
&&
!
parse_input_file
(
spec
))
break
;
if
(
fake_module
)
{
if
(
spec
->
type
==
SPEC_WIN16
)
output_fake_module16
(
spec
);
else
output_fake_module
(
spec
);
break
;
}
read_undef_symbols
(
spec
,
argv
);
switch
(
spec
->
type
)
if
(
target_platform
!=
PLATFORM_WINDOWS
)
{
case
SPEC_WIN16
:
output_spec16_file
(
spec
);
break
;
case
SPEC_WIN32
:
if
(
target_platform
==
PLATFORM_WINDOWS
)
output_pe_module
(
spec
);
else
output_spec32_file
(
spec
);
break
;
default:
assert
(
0
);
load_import_libs
(
argv
);
read_undef_symbols
(
spec
,
argv
);
resolve_imports
(
spec
);
}
if
(
spec
->
type
==
SPEC_WIN16
)
output_spec16_file
(
spec
);
else
output_spec32_file
(
spec
);
break
;
case
MODE_DEF
:
if
(
argv
[
0
])
fatal_error
(
"file argument '%s' not allowed in this mode
\n
"
,
argv
[
0
]
);
...
...
tools/winebuild/spec16.c
View file @
ded2e82f
...
...
@@ -815,17 +815,16 @@ void output_spec16_file( DLLSPEC *spec16 )
{
DLLSPEC
*
spec32
=
alloc_dll_spec
();
resolve_imports
(
spec16
);
add_16bit_exports
(
spec32
,
spec16
);
needs_get_pc_thunk
=
0
;
open_output_file
();
output_standard_file_header
();
if
(
target_platform
!=
PLATFORM_WINDOWS
)
output_module
(
spec32
);
output_module
(
spec32
);
output_module16
(
spec16
);
output_stubs
(
spec16
);
output_exports
(
spec32
);
if
(
target_platform
!=
PLATFORM_WINDOWS
)
output_imports
(
spec16
);
output_imports
(
spec16
);
if
(
is_undefined
(
"__wine_call_from_16"
))
output_asm_relays16
();
if
(
needs_get_pc_thunk
)
output_get_pc_thunk
();
if
(
spec16
->
main_module
)
...
...
tools/winebuild/spec32.c
View file @
ded2e82f
...
...
@@ -584,6 +584,8 @@ void output_module( DLLSPEC *spec )
switch
(
target_platform
)
{
case
PLATFORM_WINDOWS
:
return
;
/* nothing to do */
case
PLATFORM_APPLE
:
output
(
"
\t
.text
\n
"
);
output
(
"
\t
.align %d
\n
"
,
get_alignment
(
page_size
)
);
...
...
@@ -710,7 +712,6 @@ void output_module( DLLSPEC *spec )
void
output_spec32_file
(
DLLSPEC
*
spec
)
{
needs_get_pc_thunk
=
0
;
resolve_imports
(
spec
);
open_output_file
();
output_standard_file_header
();
output_module
(
spec
);
...
...
@@ -725,24 +726,6 @@ void output_spec32_file( DLLSPEC *spec )
/*******************************************************************
* output_pe_module
*
* Build a PE from a spec file.
*/
void
output_pe_module
(
DLLSPEC
*
spec
)
{
UsePIC
=
0
;
resolve_imports
(
spec
);
open_output_file
();
output_standard_file_header
();
output_stubs
(
spec
);
output_exports
(
spec
);
output_resources
(
spec
);
close_output_file
();
}
/*******************************************************************
* output_fake_module
*
* Build a fake binary module from a spec file.
...
...
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