Building wine 1.9.20

Bronze Alibi bronze.alibi at startmail.com
Sat Mar 28 10:00:57 CDT 2020


Thank you so much!  

While I would love to have this tool, I think it would do the community a
greater service if you open sourced that for the whole wine developer
community to benefit from.  

  

> Hi  

>

>  

>

> Some time ago, I wrote a tool that could build Wine binaries for every Git
commit, then commit them into a separate Git repository, so that for a
bisection test, you only binary search the pre-built binaries and run them
directly, no building source (ie. bisect-run-bisect-run, no building).  

>

>  

>

> I've been trying to update this tool lately, and you're right, old versions
of Wine often don't build. What I've had to do is "reverse regression test"
for the build regressions
(<https://wiki.winehq.org/Reverse_Regression_Testing>) and then backport those
commits to older versions. So far I can get Wine to compile as far back as 5
February 2014, which was just before version 1.7.12. Sadly the build system
was completely rewritten in January 2014, making many of the commits unable to
backport further; I would like to get back to 2008. On my previous attempt I
succeeded in building all (buildable) binary versions from Wine 1.0 in June
2008, to October 2011, about 35000 binary versions in total, and successfully
used it for rapid regression testing in that timeframe.  

>

>  

>

> The long list of commits I had to backport to build up to 5 February 2014
(some of which are for FreeBSD) is as follows, in the order they have to be
applied. Note that you only apply commits that come AFTER the commit you're
building, not the ones from before (ie. "git rev-list --max-count=1
HEAD..<commit>" produces some output instead of silently exiting). My
tool also automates that.  

>

>  

>

> // makedep: Generate rules for bitmap fonts based on pragmas in the .sfd
file.  

>

> // Wed Feb 5 12:15:07 2014 +0100  

>

> new Patch("1cccb5594a5adab129bb2c10db796db14199936b"),  

>

>  

>

> // makedep: Add support for specifying an object directory different from
the current directory.  

>

> // Thu Apr 10 10:03:03 2014 +0200  

>

> new Patch("dcf6060ab8aab4724ada508db295a85634ca51d4"),  

>

>  

>

> // makedep: Pass a makefile pointer to all internal functions.  

>

> // Thu Apr 10 13:41:23 2014 +0200  

>

> new Patch("f9ddafa807b95f743764dea0f3bddf4acf71dcbc"),  

>

>  

>

> // configure: Always build wine.inf even if we don't install it.  

>

> // Thu Jul 3 21:20:38 2014 +0200  

>

> new Patch("3bbbb6d5a73d8c45329d72f1f980377ede79f4c8"),  

>

>  

>

> // makefiles: Do not run update-desktop-database on make install/uninstall.  

>

> // Sun May 31 08:03:54 2015 +0200  

>

> new Patch("ffabfd492ffc4bdca3ca0deaead238670e6fdcaf"),  

>

>  

>

> // secur32: Use gnutls_cipher_get_block_size to get cupher block size.  

>

> // Tue Jun 16 13:46:46 2015 +0200  

>

> new Patch("dedbd1883611b1c72abeb05d9f93cd5ac8af2e90"),  

>

>  

>

> // secur32: Fixed compilation on with gnutls.  

>

> // Wed Jun 17 13:01:14 2015 +0200  

>

> new Patch("72747526b1242f436db9e68d319c37484ce02109"),  

>

>  

>

> // secur32: Fixed compilation on very old gnutls versions.  

>

> // Thu Jun 18 13:06:08 2015 +0200  

>

> new Patch("cae3f98c6938663aab248f6551e9cc7cfbc1ce09"),  

>

>  

>

> // makefiles: Move wine.desktop to the loader directory.  

>

> // Mon Oct 26 23:03:08 2015 +0900  

>

> new Patch("2207a8907ca71792ab27acf9bb61efa80431ea84"),  

>

>  

>

> // makefiles: Generate rules for building tool binaries.  

>

> // Tue Oct 27 12:13:26 2015 +0900  

>

> new Patch("7626728b562fae32f6d0f0c5d01589e5861f09dd"),  

>

>  

>

> // makefiles: Automatically add RPATH support for programs that use libwine.  

>

> // Wed Oct 28 10:56:21 2015 +0900  

>

> new Patch("a1515c68d4d4b4334f44b098debba2548a16ca38"),  

>

>  

>

> // secur32: Provide a static declaration for gnutls_cipher_get_block_size.  

>

> // Thu Jun 16 00:21:13 2016 -0500  

>

> new Patch("bf5ac531a030bce9e798ab66bc53e84a65ca8fdb"),  

>

>  

>

> // winspool.drv: Include <cups/ppd.h> to fix building against the
macOS 10.12 SDK.  

>

> // Mon Jun 27 15:34:07 2016 -0500  

>

> new Patch("10065d2acd0a9e1e852a8151c95569b99d1b3294"),  

>

>  

>

> // fonts: Increase the Em size to fix a build failure with freetype 2.8.1.  

>

> // Thu Sep 28 00:23:42 2017 +0200  

>

> new Patch("40166848a7944383a4cfdaac9b18bd03fbb2b4f9"),  

>

>  

>

> // configure: Link wineserver to libinotify if necessary.  

>

> // Sat Apr 20 15:14:53 2019 +0200  

>

> new Patch("07c2e8581a2745725cd7ce4282eedb9a8084a1e4"),  

>

>  

>

> // iphlpapi: Account for structs inpcb and tcpcb being unavailable for
userland in FreeBSD 12.  

>

> // Sat Aug 17 10:32:31 2019 +0200  

>

> new Patch("424e1e71cac268cc2db8483d84474f88d61b67d1")  

>

>  

>

> Maybe I should also send you my tool in a form that just applies the
relevant patches?  

>

>  

>

> Good luck  

>

> Damjan  

>

>  

>

>  

>

>  

>

> On Sat, Mar 28, 2020 at 12:44 AM Bronze Alibi
<[bronze.alibi at startmail.com](mailto:bronze.alibi at startmail.com)> wrote:  

>

>> Hello everybody,  

>>

>>  

>>

>>  

>>

>>  

>>

>> This is my first time trying to figure out if something is a regression ,
so I need to build an older version of wine.  

>>

>> The application involved was reported to work in the past on wine 1.9.20.
As that was also an older version of the application it is not clear weather a
change in wine or a change in the application broke support, so I want to run
the current version on wine 1.9.20.  

>>

>>  

>>

>>  

>>

>>  

>>

>> Sadly that build fails. The part from where the red text started appearing
is attached below.  

>>

>> The system is a current installation of Archlinux.  

>>

>> Can anyone help me out here with what needs to be adjusted here.  

>>

>> This is my first time posting to this list, so if this is the wrong place
or information is missing, please tell and I will adjust.  

>>

>>  

>>

>>  

>>

>>  

>>

>> (following <https://wiki.winehq.org/Regression_Testing#Preliminary_notes> I
went back to the winehq-packaged wine 2.0.4 version to test on debian buster,
but that seems not far back enough sadly.)  

>>

>>  

>>

>>  

>>

>>  

>>

>> Thanks!  

>>

>>  

>>

>>  

>>

>>  

  

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20200328/06e12543/attachment-0001.htm>


More information about the wine-devel mailing list