Zebediah Figura
9951f2f433
makedep: Do not forbid importing system headers in msvcrt modules.
...
The apparent intention of catching mistakes early is laudable. However, the
number of exceptions both in the code and not in the code (in particular,
valgrind.h) shows that this is clearly getting in the way more often than not.
In practice an attempt to compile with a system API we don't support will be met
with a clear error at link time, e.g.:
/usr/bin/x86_64-w64-mingw32-ld: dlls/xmllite/reader.cross.o: in function `debugstr_nodetype':
/home/whatsit/git/wine64/../wine/dlls/xmllite/reader.c:116: undefined reference to `pthread_once'
And when there is no external function involved (as with stdarg.h, x86intrin.h,
valgrind.h), there's no reason to prevent use of the headers.
The motivation for this patch is the ability to import system vkd3d.h in e.g.
d3d12 and dxgi, which do not link to libvkd3d directly (but rather indirectly
through wined3d) and so do not fall under the has_external_import() exception. I
could see no simple way to adapt has_external_import() to account for this case.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-04 10:02:24 +01:00
Alexandre Julliard
1c2e3fc68a
makedep: Add support for winebuild --data-only option.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 22:05:33 +01:00
Stefan Dösinger
e5041acfa2
makedep: Fix some signed vs unsigned msvc warnings.
...
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:33 +01:00
Alexandre Julliard
26a3472b34
makefiles: Disable printf format warnings for non-PE msvcrt modules.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 21:09:19 +01:00
Alexandre Julliard
0c0e8b576e
makefiles: Force -Wformat for PE modules when using 'long' types.
...
Suggested by Eric Pouech.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:40:44 +01:00
Alexandre Julliard
f4af3134de
makefiles: Specify the bison prefix directly in the source files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard
363d078f46
makefiles: Add a maintainer-clean target.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard
3c0a2fa5a6
makefiles: Add dependencies for files generated in maintainer mode.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard
4c7a2b4cbb
makefiles: Compare the full path when looking for generated include files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard
5d4ca2225e
makefiles: Also look for generated includes in the source file directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard
9da1813651
makefiles: Add helper functions to open generated include files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 13:15:12 +01:00
Alexandre Julliard
9d494730fe
makefiles: Get rid of the documentation rules.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-19 16:19:07 +01:00
Alexandre Julliard
a041075cd2
makefiles: Support per-platform values for EXTRADLLFLAGS.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 20:20:39 +01:00
Zebediah Figura
e454c62f36
makedep: Check for external libraries instead of include paths when determining whether to allow external includes.
...
The include path may be empty, e.g. if the relevant headers are to be found
directly in the MinGW sysroot.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-30 12:42:46 +01:00
Alexandre Julliard
f153ca0d14
makedep: Unify the various code paths for module generation.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 15:05:48 +01:00
Alexandre Julliard
1ef7dd2d7c
makefiles: Don't use bundled libraries to build native Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 14:40:04 +01:00
Alexandre Julliard
53e207fde0
makefiles: Don't use bundled libraries to build native programs.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 18:34:32 +01:00
Alexandre Julliard
859338a4d4
makefiles: Add a separate variable to keep track of source test files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-20 13:26:51 +01:00
Alexandre Julliard
62d335053f
makefiles: Don't append .fake extension to fake dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-20 13:07:47 +01:00
Alexandre Julliard
e694c798b6
makefiles: Stop creating importlib symlinks.
...
We always pass the full path to winegcc.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-20 13:03:53 +01:00
Alexandre Julliard
a9e00347b7
makedep: Use a separate variable for cross-compiled importlib objects.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:35 +01:00
Alexandre Julliard
6944dc5189
makefiles: Split the module generation into several helper functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-18 20:15:19 +01:00
Alexandre Julliard
8c68894f04
makefiles: Don't add msvcrt import in dlls built as part of the tests.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-17 15:19:33 +01:00
Alexandre Julliard
a9b5bb326a
makefiles: Use static importlibs on all platforms.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-16 17:44:42 +01:00
Alexandre Julliard
04d8725080
makefiles: Directly generate resources also for non-registered typelibs.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-16 10:22:51 +01:00
Alexandre Julliard
665ebe2a7a
makefiles: Do not install external libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-15 12:07:44 +01:00
Alexandre Julliard
9248dbaf0d
makefiles: Always use winebuild to build static libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-14 21:19:48 +01:00
Alexandre Julliard
b78ef40ab1
makefiles: Don't copy the source makefile into the sub-directory stub makefiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-14 12:29:24 +01:00
Alexandre Julliard
ef8b871e12
makefiles: Make importlib dependencies point to their respective dll.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-12 22:42:51 +01:00
Alexandre Julliard
c94f44f9b4
widl: Search for imported typelibs in the library search path.
...
Add a -L option to specify that path.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-12 22:42:51 +01:00
Alexandre Julliard
7c5761ed40
wrc: Ignore the target option.
...
Nothing in resource files depends on the pointer size.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-11 17:30:41 +01:00
Alexandre Julliard
6ebcc54a5c
makefiles: Explicitly import all the needed libraries.
...
Don't rely on winegcc adding any default libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-11 13:28:19 +01:00
Alexandre Julliard
37c0f5c690
makefiles: Substitute all defined variables in the main makefile.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 13:44:44 +01:00
Alexandre Julliard
30fb17bda0
makefiles: Add support for importing PE system libraries using the -l option.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-25 11:05:07 +02:00
Alexandre Julliard
d1248c8a0c
makefiles: Don't try to link a library to itself.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-25 11:04:11 +02:00
Alexandre Julliard
a1be6b475d
makefiles: Don't pass warning flags to external libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-18 11:07:23 +02:00
Alexandre Julliard
a4b01382e1
makefiles: Add support for building libraries imported from external sources.
...
Based on a patch by Rémi Bernon.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-18 11:07:07 +02:00
Alexandre Julliard
1699847dad
makefiles: Only build static libraries that are needed for linking.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-08 16:57:24 +02:00
Alexandre Julliard
518f9a12c1
makefiles: Use the STATICLIB variable for static import libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-06 20:29:34 +02:00
Alexandre Julliard
c60d604544
makefiles: Remove libwine_port.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-06 20:29:34 +02:00
Alexandre Julliard
207068c48c
tools: Move some portability defines out of port.h.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-06 20:29:34 +02:00
Jacek Caban
d5c585c6aa
makedep: Don't use -fno-builtin for importlibs.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 16:09:23 +02:00
Jacek Caban
63e6eaedee
makedep: Use -fno-builtin for CRT DLLs on PE targets.
...
Just like we do for other targets with cross compiler enabled. Fixes
PE-only i686 build with llvm-mingw, which otherwise uses unexpected
optimizations.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 16:09:17 +02:00
Alexandre Julliard
9e3959bd9b
tools: Add a few helper functions for file names and extensions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-29 21:38:11 +02:00
Alexandre Julliard
97ca9f8a3d
tools: Add a shared header for common helper functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-28 17:38:06 +02:00
Alexandre Julliard
8ec2321328
makefiles: Use explicit header path for sanity checks.
...
This makes it possible to use a local config.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-23 14:45:39 +02:00
Alexandre Julliard
3c81449d16
makefiles: Allow including files with relative paths.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-23 13:54:26 +02:00
Alexandre Julliard
5e0479c497
makefiles: Don't use winegcc to build native Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-22 11:50:26 +02:00
Alexandre Julliard
ab5664a5e6
makefiles: Explicitly name the Unix library in the makefile instead of using --subsystem unixlib.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-21 17:49:48 +02:00
Alexandre Julliard
0f83b83cd5
makefiles: Normalize the host architecture in makedep instead of configure.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-21 14:26:38 +02:00