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
6306a173
Commit
6306a173
authored
Oct 16, 2019
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
winebuild: Add support for excluding a specific CPU architecture.
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
bd7ba264
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
9 additions
and
6 deletions
+9
-6
parser.c
tools/winebuild/parser.c
+5
-3
winebuild.man.in
tools/winebuild/winebuild.man.in
+4
-3
No files found.
tools/winebuild/parser.c
View file @
6306a173
...
...
@@ -470,7 +470,7 @@ static int parse_spec_extern( ORDDEF *odp, DLLSPEC *spec )
*/
static
const
char
*
parse_spec_flags
(
DLLSPEC
*
spec
,
ORDDEF
*
odp
)
{
unsigned
int
i
;
unsigned
int
i
,
cpu_mask
=
0
;
const
char
*
token
;
do
...
...
@@ -493,13 +493,14 @@ static const char *parse_spec_flags( DLLSPEC *spec, ORDDEF *odp )
odp
->
flags
|=
FLAG_CPU_WIN64
;
else
{
int
cpu
=
get_cpu_from_name
(
cpu_name
);
int
cpu
=
get_cpu_from_name
(
cpu_name
+
(
cpu_name
[
0
]
==
'!'
)
);
if
(
cpu
==
-
1
)
{
error
(
"Unknown architecture '%s'
\n
"
,
cpu_name
);
return
NULL
;
}
odp
->
flags
|=
FLAG_CPU
(
cpu
);
if
(
cpu_name
[
0
]
==
'!'
)
cpu_mask
|=
FLAG_CPU
(
cpu
);
else
odp
->
flags
|=
FLAG_CPU
(
cpu
);
}
cpu_name
=
strtok
(
NULL
,
","
);
}
...
...
@@ -537,6 +538,7 @@ static const char *parse_spec_flags( DLLSPEC *spec, ORDDEF *odp )
token
=
GetToken
(
0
);
}
while
(
token
&&
*
token
==
'-'
);
if
(
cpu_mask
)
odp
->
flags
|=
FLAG_CPU_MASK
&
~
cpu_mask
;
return
token
;
}
...
...
tools/winebuild/winebuild.man.in
View file @
6306a173
...
...
@@ -326,13 +326,14 @@ of a
specification when an application expects to find the function's
implementation inside the dll.
.TP
.RE
.BI -arch= cpu\fR[\fB,\fIcpu\fR]
.B -arch=\fR[\fB!\fR]\fIcpu\fR[\fB,\fIcpu\fR]
The entry point is only available on the specified CPU
architecture(s). The names \fBwin32\fR and \fBwin64\fR match all
32-bit or 64-bit CPU architectures respectively. In 16-bit dlls,
specifying \fB-arch=win32\fR causes the entry point to be exported
from the 32-bit wrapper module.
from the 32-bit wrapper module. A CPU name can be prefixed with
\fB!\fR to exclude only that specific architecture.
.RE
.SS "Function ordinals"
Syntax:
.br
...
...
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