Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
4ccf78fb
Commit
4ccf78fb
authored
Feb 12, 2009
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
loader: Start phasing out the LinuxThreads support.
parent
b58ef6bf
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
13 additions
and
9 deletions
+13
-9
glibc.c
loader/glibc.c
+13
-1
kthread.c
loader/kthread.c
+0
-8
No files found.
loader/glibc.c
View file @
4ccf78fb
...
@@ -56,11 +56,23 @@ static void *xmalloc( size_t size )
...
@@ -56,11 +56,23 @@ static void *xmalloc( size_t size )
/* separate thread to check for NPTL and TLS features */
/* separate thread to check for NPTL and TLS features */
static
void
*
needs_pthread
(
void
*
arg
)
static
void
*
needs_pthread
(
void
*
arg
)
{
{
const
char
*
loader
;
pid_t
tid
=
gettid
();
pid_t
tid
=
gettid
();
/* check for NPTL */
/* check for NPTL */
if
(
tid
!=
-
1
&&
tid
!=
getpid
())
return
(
void
*
)
1
;
if
(
tid
!=
-
1
&&
tid
!=
getpid
())
return
(
void
*
)
1
;
/* check for TLS glibc */
/* check for TLS glibc */
return
(
void
*
)(
wine_get_gs
()
!=
0
);
if
(
wine_get_gs
()
!=
0
)
return
(
void
*
)
1
;
/* check for exported epoll_create to detect new glibc versions without TLS */
if
(
wine_dlsym
(
RTLD_DEFAULT
,
"epoll_create"
,
NULL
,
0
))
fprintf
(
stderr
,
"wine: glibc >= 2.3 without NPTL or TLS is not a supported combination.
\n
"
" Please upgrade to a glibc with NPTL support.
\n
"
);
else
fprintf
(
stderr
,
"wine: Your C library is too old. You need at least glibc 2.3 with NPTL support.
\n
"
);
if
(
!
(
loader
=
getenv
(
"WINELOADER"
))
||
!
strstr
(
loader
,
"wine-kthread"
))
exit
(
1
);
return
0
;
}
}
/* return the name of the Wine threading variant to use */
/* return the name of the Wine threading variant to use */
...
...
loader/kthread.c
View file @
4ccf78fb
...
@@ -907,14 +907,6 @@ void __pthread_initialize(void)
...
@@ -907,14 +907,6 @@ void __pthread_initialize(void)
if
(
!
done
)
if
(
!
done
)
{
{
done
=
1
;
done
=
1
;
/* check for exported epoll_create to detect glibc versions that we cannot support */
if
(
wine_dlsym
(
RTLD_DEFAULT
,
"epoll_create"
,
NULL
,
0
))
{
static
const
char
warning
[]
=
"wine: glibc >= 2.3 without NPTL or TLS is not a supported combination.
\n
"
" It will most likely crash. Please upgrade to a glibc with NPTL support.
\n
"
;
write
(
2
,
warning
,
sizeof
(
warning
)
-
1
);
}
libc_fork
=
wine_dlsym
(
RTLD_NEXT
,
"fork"
,
NULL
,
0
);
libc_fork
=
wine_dlsym
(
RTLD_NEXT
,
"fork"
,
NULL
,
0
);
libc_sigaction
=
wine_dlsym
(
RTLD_NEXT
,
"sigaction"
,
NULL
,
0
);
libc_sigaction
=
wine_dlsym
(
RTLD_NEXT
,
"sigaction"
,
NULL
,
0
);
libc_uselocale
=
wine_dlsym
(
RTLD_DEFAULT
,
"uselocale"
,
NULL
,
0
);
libc_uselocale
=
wine_dlsym
(
RTLD_DEFAULT
,
"uselocale"
,
NULL
,
0
);
...
...
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