Hi, I have two questions about the build system of WINE. 1. Does WINE's build system deploy any kind of run-time CPU detection while building the software? I understand that a lot of things are configure by the configure script; my question is that does this phase decide everything, or are there further settings that are detected only during the "make" phase? (I am thinking of CPU-specific optimizations, done by GCC, considering the CPU it's running on.) I am asking this because I would like to build wine on a completely different box than it is going to run on. (The slow box1 is running a system mounted via NFS, and I can chroot into the same directory on the fast box2, so the libraries and compiler are the same in both environment, only the CPU is different.) Can I do this, or will this cause problems? 2. If I successfully finish a build, and then later I modify some random wine source files (or upgrade dependency libraries), and restart "make" in the root directory, is the build system smart enough to detect and rebuild only the parts that need rebuilding? Or should I always do a make clean before that? How about when I need to run the configure script again, because some settings have changed? Do partial re-builds still work in these cases? Thank you for your help: Kristof
Hi, I have two questions about the build system of WINE. 1. Does WINE's build system deploy any kind of run-time CPU detection while building the software? I understand that a lot of things are configure by the configure script; my question is that does this phase decide everything, or are there further settings that are detected only during the "make" phase? (I am thinking of CPU-specific optimizations, done by GCC, considering the CPU it's running on.) I am asking this because I would like to build wine on a completely different box than it is going to run on. (The slow box1 is running a system mounted via NFS, and I can chroot into the same directory on the fast box2, so the libraries and compiler are the same in both environment, only the CPU is different.) Can I do this, or will this cause problems? 2. If I successfully finish a build, and then later I modify some random wine source files (or upgrade dependency libraries), and restart "make" in the root directory, is the build system smart enough to detect and rebuild only the parts that need rebuilding? Or should I always do a make clean before that? How about when I need to run the configure script again, because some settings have changed? Do partial re-builds still work in these cases? Thank you for your help: Kristof -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://www.winehq.org/pipermail/wine-users/attachments/20120101/0b03c345/attachment.html>
I think you should be ok building on the fast machine with the different CPU... if you run into trouble, it'll be pretty easy to add things to CFLAGS to specify a generic CPU type. The build system is smart enough to only rebuild what's needed, usually no need to do 'make clean'. If your fast box has many cores, you might want to do "make depend && make -j8" rather than just "make -j8", as sometimes make depend explodes when there are many cores. If you touch the build system itself, you might have to regenerate it, but you only need to do that when doing things like adding new dlls.