Alexandre Julliard
f9cad1bd19
makedep: Make the handling of install rules more generic.
2022-09-07 10:19:00 +02:00
Alexandre Julliard
e31276e9a2
makefiles: Look for source files in the makefile before trying to open them.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-07-28 17:46:51 +02:00
Alexandre Julliard
6f4d1766a7
makefiles: Avoid adding the same source multiple times.
2022-07-28 17:46:50 +02:00
Alexandre Julliard
872dc83e81
makefiles: List all headers in the makefile.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-07-28 17:46:50 +02:00
Alexandre Julliard
194e09baec
makefiles: Add separate variables for Unix flags and libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-29 23:23:41 +02:00
Alexandre Julliard
e2d96342df
makefiles: Use the defined external lib variables also when building the libs themselves.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-29 23:23:41 +02:00
Alexandre Julliard
b819b99562
makefiles: Never install external libraries.
...
Spotted by Kevin Puetz.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-24 22:38:40 +02:00
Jacek Caban
f1549e7f6c
winemac: Move driver implementation to unixlib.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
2022-06-03 09:40:32 +02:00
Alexandre Julliard
ad44edebde
makedep: Add dependency on locale.nls for rc files.
...
wrc will load locale.nls if the rc file uses a non-English language.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-04 10:43:48 +02:00
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
Alexandre Julliard
088a787a2c
makefiles: Make -mno-cygwin the default.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Alexandre Julliard
eda25a58c5
makefiles: Link with the full library name for Unix library imports.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Alexandre Julliard
0f62381f67
makefiles: Build the unix library name when parsing the sources.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Alexandre Julliard
2781af45d5
makefiles: Always link Unix libraries against ntdll.so.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 11:13:04 +02:00
Alexandre Julliard
9999273178
makefiles: Don't depend on import libraries for native Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-12 11:33:57 +02:00
Jacek Caban
32afe1d982
makedep: Make unix libs depend on ntdll.so.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-01 18:00:38 +02:00
Alexandre Julliard
a5aaa41069
makefiles: Install libwine into the architecture-specific directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-28 11:41:27 +02:00
Alexandre Julliard
2801d6341c
makefiles: Install Unix binaries into an architecture-specific directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-28 11:40:39 +02:00
Alexandre Julliard
893febda14
makefiles: Install PE fake dlls in the architecture-specific directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Alexandre Julliard
ee81814f2b
makefiles: Install PE import libraries in the architecture-specific directory.
...
Based on a patch by Jacek Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Alexandre Julliard
c59126d403
makefiles: Install PE files in an architecture-specific directory.
...
Based on a patch by Jacek Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Alexandre Julliard
4f04994ef4
makefiles: Only allow includes and defines in pkg-config flags.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50811
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-08 12:18:02 +02:00
Rémi Bernon
b18a48eb70
include: Include x86intrin.h in msvcrt/intrin.h.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-16 20:36:43 +01:00
Alexandre Julliard
852c9c69de
makefiles: Add missing dependency to wrc for test dll resources.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-24 21:58:53 +01:00
Alexandre Julliard
74aa42a529
makefiles: Make the tests also depend on the Unix library of the tested module.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-18 14:38:47 +01:00
Alexandre Julliard
1a16b9e9aa
makefiles: Add support for Automake-style silent make rules.
...
Based on a patch by Jeff Smith.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49841
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-11 16:12:23 +01:00
Alexandre Julliard
497c902857
makefiles: Get rid of the libwine.so symlink.
...
We no longer need to link to libwine.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-04 11:29:23 +01:00
Jacek Caban
727168a9e1
makedep: Use -fno-builtin for crt modules.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 21:00:22 +01:00
Alexandre Julliard
0b9963ad34
makedep: No longer use wine/port.h.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 10:43:17 +01:00
Jacek Caban
e84394764a
makedep: Use short debug file names.
...
Fixes gitignore entries for symbol files.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-19 21:23:55 +01:00
Alexandre Julliard
be8a81b54c
makefiles: Allow modules to link to their own import library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-19 21:23:22 +01:00
Alexandre Julliard
27b20c1db5
makefiles: Don't add a default crt lib for msvcrt dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-19 21:23:21 +01:00
Zebediah Figura
52dc0ccf6d
makefiles: Disable implicit rules.
...
This improves the time of a full-tree build with no out-of-date objects from
~3.7s to ~0.7s on one of my development machines.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-16 17:51:30 +01:00
Alexandre Julliard
ec99ba1b29
makefiles: Explicitly create destination dirs when installing symlinks.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50039
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-23 20:16:53 +02:00
Alexandre Julliard
aabd2b54b2
makefiles: List all possible targets in the stub makefiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-11 21:36:04 +02:00
Alexandre Julliard
f691bdb6bf
makefiles: Don't build Unix object files on Windows.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-25 13:44:43 +02:00
Alexandre Julliard
0b9c7eb295
makefiles: Define WINE_UNIX_LIB when building Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 15:05:56 +02:00
Alexandre Julliard
c670df976c
makefiles: Don't use default imports for Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 15:03:08 +02:00
Alexandre Julliard
c73ae99ff4
makefiles: Only add default libraries for Unix builds.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-18 15:02:00 +02:00
Alexandre Julliard
468af5bbb4
makefiles: Remove directory variables that are redundant with non-recursive make.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:40 +02:00
Alexandre Julliard
feb5229091
makefiles: Remove .. components from generated paths.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:40 +02:00
Alexandre Julliard
1dd3051cca
makefiles: Generate a single non-recursive makefile at the top level.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-14 19:42:39 +02:00
Alexandre Julliard
f2d60c16ea
makefiles: Add separate variable to keep track of source dir font files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 15:49:45 +02:00
Alexandre Julliard
9a542f9dda
makefiles: Remove support for generating a single makefile.
...
We need to handle all makefiles at once for proper import lib
dependencies.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 15:49:45 +02:00
Alexandre Julliard
3f330361d2
makefiles: Fix a few more object directory references.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 15:49:45 +02:00
Alexandre Julliard
9da7d620ef
makefiles: Also store the basename without object dir for generated files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-11 12:46:22 +02:00
Alexandre Julliard
5d2596ad8a
makefiles: Explicitly import the CRT library also for test dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-10 22:05:00 +02:00
Alexandre Julliard
96e5ac876f
makefiles: Build extra targets explicitly if they are not a dependency.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
5adb93c654
makefiles: Add some missing object dir references.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
82acb284bd
makefiles: Store .pot files in a separate variable.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00
Alexandre Julliard
b211bd7b64
makefiles: Add dependencies for the import lib symlinks.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-09 20:30:31 +02:00