diff --git a/DEVELOPER.md b/DEVELOPER.md deleted file mode 100644 index 2cee111c..00000000 --- a/DEVELOPER.md +++ /dev/null @@ -1,152 +0,0 @@ -Developers and maintainers guide -================================ - -This document will provide some information targeted at developers, who -either want to build/package Wine Staging for their distribution, but also -for developers who would like to contribute their patches to Wine Staging, -to get them included in future releases. - - - -Compiling Wine Staging -====================== - -**Warning:** Please note that starting with Staging 1.7.23 it is -deprecated to manually apply patches without using the Makefile. To avoid -typical pitfalls for package maintainers (like trying to use the patch -commandline utility for binary patches or not updating the patchlist) it is -highly recommended to use the Makefile in order to apply all patches. This -ensures that the the correct patch utility is used, that the list of patches -is updated appropriately, and so on. Please note that it is still possible -to exclude patches if desired, take a look at the end of this document for -more details. - -Instructions ------------- - -The following instructions (based on the [Gentoo -Wiki](https://wiki.gentoo.org/wiki/Netflix/Pipelight#Compiling_manually)) -will give a short overview how to compile Wine Staging, but of course not -explain all details. Make sure to install all required Wine dependencies -before proceeding. - -As the first step please grab the latest Wine source: -```bash -wget http://prdownloads.sourceforge.net/wine/wine-1.7.31.tar.bz2 -wget https://github.com/wine-compholio/wine-staging/archive/v1.7.31.tar.gz -``` - -Extract the archives: -```bash -tar xvjf wine-1*.tar.bz2 -cd wine-1* -tar xvzf ../v1.7.31.tar.gz --strip-components 1 -``` - -And apply the patches: -```bash -make -C ./patches DESTDIR=$(pwd) install -``` - -Afterwards run configure (you can also specify a prefix if you don't want to install -Wine Staging system-wide): -```bash -./configure --with-xattr -``` - -Before you continue you should make sure that `./configure` doesn't show any -warnings (look at the end of the output). If there are any warnings, this -most likely means that you're missing some important header files. Install -them and repeat the `./configure` step until all problems are fixed. - -Afterwards compile it (and grab a cup of coffee): -```bash -make -``` - -And install it (you only need sudo for a system-wide installation): -```bash -sudo make install -``` - -Excluding patches ------------------ - -It is also possible to apply only a subset of the patches, for example if -you're compiling for a distribution where PulseAudio is not installed, or -if you just don't like a specific patchset. Please note that some patchsets -depend on each other, and requesting an impossible situation might result -in a failure to apply all patches. - -Lets assume you want to exclude the patchset in directory `DIRNAME`, then -just invoke the Makefile like this: -```bash -make -C ./patches DESTDIR=$(pwd) install -W DIRNAME.ok -``` - -Using the same method its also possible to exclude multiple patchsets. If you -want to exclude a very large number of patches, it is easier to do specify -a list of patches which should be included instead. To apply for example -only the patchsets in directory `DIRNAME1` and `DIRNAME2`, you can use: -```bash -make -C ./patches DESTDIR=$(pwd) PATCHLIST="DIRNAME1.ok DIRNAME2.ok" install -``` - - -Contributing to Wine Staging -============================ - -Please note that Wine Staging is not just an arbitrary collection of Wine -patches. We see Wine Staging as a **testing version** in preparation for -patches to be submitted to upstream Wine. This implies that all patches should -at least have a minimum standard quality. Unlike some other PPAs/AURs which -provide heavily patched Wine versions, we will not accept hacks for very -specific games. Such hacks often break compatibility with other applications, -which means we probably don't want to include them, sorry. - -If you think your patches are indeed a proper implementation, then feel free -to contribute them. Please note that to allow possible later inclusion -into upstream Wine, we will require you to pay attention to the same -[rules](http://wiki.winehq.org/SubmittingPatches). Please be patient and -give us up to about a week to review them - we're a very small team, so -it might take some time, and we want to make sure that the implementation -doesn't contain any critical errors, which could cause regressions. If you -want to contribute huge sets of patches, we would really like you to *stay -contributing* in the future. Even if we accepted your patches, this doesn't -necessary mean we understand all of it, and if you cannot or don't want -to maintain them (especially in case of errors, or difficult rebasing), -we will probably end up removing them again. - -You can also suggest adding patches written by other people - in this case -your request should include who wrote the patch. Anonymous patches which -don't include the author information aren't welcome, similar to the rules -for upstream Wine. - - -Attribution guidelines ----------------------- - -The Wine Staging repository expects all patches to conform to -Wine's (undocumented) attribution guidelines. There are a variety of ways -to attribute patches, but they all involve an additional line to the patch -subject: - -``` -commit 0000000000000000000000000000000000000000 -Author: Example Author -Date: Sat Jul 26 12:31:50 2014 -0600 - - Name of patch. - - TYPE-OF-ATTRIBUTION. -``` - -TYPE-OF-ATTRIBUTION can be any of the following: - -`Found/Spotted by FINDER.`: The resolved issue was found by FINDER, they -should receive appropriate credit for finding the problem - even though -their patch was not used in the final implementation. - -`Based on patch by AUTHOR.`: The patch created by AUTHOR was a starting point -for the patch, some modifications were made to their patch - but they should -receive credit since the original implementation was theirs. \ No newline at end of file diff --git a/debian/tools/DEVELOPER.md.in b/debian/tools/DEVELOPER.md.in deleted file mode 100644 index 43d1ef9d..00000000 --- a/debian/tools/DEVELOPER.md.in +++ /dev/null @@ -1,152 +0,0 @@ -Developers and maintainers guide -================================ - -This document will provide some information targeted at developers, who -either want to build/package Wine Staging for their distribution, but also -for developers who would like to contribute their patches to Wine Staging, -to get them included in future releases. - - - -Compiling Wine Staging -====================== - -**Warning:** Please note that starting with Staging 1.7.23 it is -deprecated to manually apply patches without using the Makefile. To avoid -typical pitfalls for package maintainers (like trying to use the patch -commandline utility for binary patches or not updating the patchlist) it is -highly recommended to use the Makefile in order to apply all patches. This -ensures that the the correct patch utility is used, that the list of patches -is updated appropriately, and so on. Please note that it is still possible -to exclude patches if desired, take a look at the end of this document for -more details. - -Instructions ------------- - -The following instructions (based on the [Gentoo -Wiki](https://wiki.gentoo.org/wiki/Netflix/Pipelight#Compiling_manually)) -will give a short overview how to compile Wine Staging, but of course not -explain all details. Make sure to install all required Wine dependencies -before proceeding. - -As the first step please grab the latest Wine source: -```bash -wget http://prdownloads.sourceforge.net/wine/wine-{version}.tar.bz2 -wget https://github.com/wine-compholio/wine-staging/archive/v{version}.tar.gz -``` - -Extract the archives: -```bash -tar xvjf wine-1*.tar.bz2 -cd wine-1* -tar xvzf ../v{version}.tar.gz --strip-components 1 -``` - -And apply the patches: -```bash -make -C ./patches DESTDIR=$(pwd) install -``` - -Afterwards run configure (you can also specify a prefix if you don't want to install -Wine Staging system-wide): -```bash -./configure --with-xattr -``` - -Before you continue you should make sure that `./configure` doesn't show any -warnings (look at the end of the output). If there are any warnings, this -most likely means that you're missing some important header files. Install -them and repeat the `./configure` step until all problems are fixed. - -Afterwards compile it (and grab a cup of coffee): -```bash -make -``` - -And install it (you only need sudo for a system-wide installation): -```bash -sudo make install -``` - -Excluding patches ------------------ - -It is also possible to apply only a subset of the patches, for example if -you're compiling for a distribution where PulseAudio is not installed, or -if you just don't like a specific patchset. Please note that some patchsets -depend on each other, and requesting an impossible situation might result -in a failure to apply all patches. - -Lets assume you want to exclude the patchset in directory `DIRNAME`, then -just invoke the Makefile like this: -```bash -make -C ./patches DESTDIR=$(pwd) install -W DIRNAME.ok -``` - -Using the same method its also possible to exclude multiple patchsets. If you -want to exclude a very large number of patches, it is easier to do specify -a list of patches which should be included instead. To apply for example -only the patchsets in directory `DIRNAME1` and `DIRNAME2`, you can use: -```bash -make -C ./patches DESTDIR=$(pwd) PATCHLIST="DIRNAME1.ok DIRNAME2.ok" install -``` - - -Contributing to Wine Staging -============================ - -Please note that Wine Staging is not just an arbitrary collection of Wine -patches. We see Wine Staging as a **testing version** in preparation for -patches to be submitted to upstream Wine. This implies that all patches should -at least have a minimum standard quality. Unlike some other PPAs/AURs which -provide heavily patched Wine versions, we will not accept hacks for very -specific games. Such hacks often break compatibility with other applications, -which means we probably don't want to include them, sorry. - -If you think your patches are indeed a proper implementation, then feel free -to contribute them. Please note that to allow possible later inclusion -into upstream Wine, we will require you to pay attention to the same -[rules](http://wiki.winehq.org/SubmittingPatches). Please be patient and -give us up to about a week to review them - we're a very small team, so -it might take some time, and we want to make sure that the implementation -doesn't contain any critical errors, which could cause regressions. If you -want to contribute huge sets of patches, we would really like you to *stay -contributing* in the future. Even if we accepted your patches, this doesn't -necessary mean we understand all of it, and if you cannot or don't want -to maintain them (especially in case of errors, or difficult rebasing), -we will probably end up removing them again. - -You can also suggest adding patches written by other people - in this case -your request should include who wrote the patch. Anonymous patches which -don't include the author information aren't welcome, similar to the rules -for upstream Wine. - - -Attribution guidelines ----------------------- - -The Wine Staging repository expects all patches to conform to -Wine's (undocumented) attribution guidelines. There are a variety of ways -to attribute patches, but they all involve an additional line to the patch -subject: - -``` -commit 0000000000000000000000000000000000000000 -Author: Example Author -Date: Sat Jul 26 12:31:50 2014 -0600 - - Name of patch. - - TYPE-OF-ATTRIBUTION. -``` - -TYPE-OF-ATTRIBUTION can be any of the following: - -`Found/Spotted by FINDER.`: The resolved issue was found by FINDER, they -should receive appropriate credit for finding the problem - even though -their patch was not used in the final implementation. - -`Based on patch by AUTHOR.`: The patch created by AUTHOR was a starting point -for the patch, some modifications were made to their patch - but they should -receive credit since the original implementation was theirs. \ No newline at end of file diff --git a/debian/tools/patchupdate.py b/debian/tools/patchupdate.py index 867f92d9..ab865a5f 100755 --- a/debian/tools/patchupdate.py +++ b/debian/tools/patchupdate.py @@ -55,9 +55,6 @@ class config(object): path_README_md = "README.md" path_template_README_md = "debian/tools/README.md.in" - path_DEVELOPER_md = "DEVELOPER.md" - path_template_DEVELOPER_md = "debian/tools/DEVELOPER.md.in" - class PatchUpdaterError(RuntimeError): """Failed to update patches.""" pass @@ -579,7 +576,7 @@ def generate_makefile(all_patches): fp.write("\n"); def generate_markdown(all_patches, stable_patches, stable_compholio_version): - """Generate README.md and DEVELOPER.md including information about specific patches and bugfixes.""" + """Generate README.md including information about specific patches and bugfixes.""" def _format_bug(mode, bugid, bugname): if mode < 0: bugname = "~~%s~~" % bugname @@ -635,12 +632,6 @@ def generate_markdown(all_patches, stable_patches, stable_compholio_version): with open(config.path_README_md, "w") as fp: fp.write(template.format(fixes="\n".join(lines))) - # Update DEVELOPER.md - with open(config.path_template_DEVELOPER_md) as template_fp: - template = template_fp.read() - with open(config.path_DEVELOPER_md, "w") as fp: - fp.write(template.format(version=stable_compholio_version)) - if __name__ == "__main__": verbose = "-v" in sys.argv[1:] @@ -663,7 +654,7 @@ if __name__ == "__main__": # Check dependencies verify_dependencies(all_patches) - # Update Makefile, README.md and DEVELOPER.md + # Update Makefile and README.md generate_makefile(all_patches) generate_markdown(all_patches, stable_patches, stable_compholio_version) diff --git a/precommit-hook.sh b/precommit-hook.sh index bed8a8e2..71d7fea7 100755 --- a/precommit-hook.sh +++ b/precommit-hook.sh @@ -7,7 +7,7 @@ git diff --cached --name-status | while read status file; do echo "*** UPDATING AUTOGENERATED FILES ***" echo "" debian/tools/patchupdate.py || exit 1 - git add patches/Makefile README.md DEVELOPER.md || exit 1 + git add patches/Makefile README.md || exit 1 break; fi done