README.mozilla (2650B)
1 This directory contains the liteFirewall plugin for the Windows NSIS 2 installer. This enables creation of firewall rules during the 3 install process. 4 5 This directory contains an modified copy of the liteFirewall source code 6 version 1.0, which is based on nsisFirewall 1.2. As stated by License.txt 7 this code is under the zlib license. A few modifications have been made 8 to this copy of the source code. The recent modifications among those 9 are contained in mozilla_customizations.diff, which should be 10 found in the same directory as this file. 11 12 Making Future src Customizations 13 -------------------------------- 14 15 When we make future customizations, they should be made both to the source 16 files, and to `mozilla_customizations.diff`. Ideally, this should be done in a 17 consistent way so that the changes to `mozilla_customizations.diff` are at 18 least somewhat readable in code review rather than just being a complete 19 rewrite of the file every time. Following these steps should accomplish this. 20 21 1) Start with a clean copy of mozilla-central. 22 2) Make a Mercurial commit: `hg commit`. For convenience referring to this 23 commit later, you can bookmark it: `hg bookmark -if liteFirewall`. 24 3) Update back to central: `hg up central`. 25 4) Generate a diff and ensure there are no new changes to `mozilla_customizations.diff`: 26 `hg diff --from=central --to=liteFirewall --unified=3 | diff - other-licenses/nsis/Contrib/liteFirewall/mozilla_customizations.diff` 27 If there are any changes (say `hg diff`'s output format changed), it may be 28 good to re-generate `mozilla_customizations.diff` and commit it separately. 29 5) Make the new customizations. 30 6) Build the Visual Studio solution. 31 This may be incompatible with later versions of Visual Studio. We can 32 get around this by upgrading the solution file when prompted, however, 33 these updated project files should not be committed. 34 This may require that the Visual Studio Installer be re-run to add the 35 MFC components, if you don't already have it. This can be done by following 36 the instructions on [Microsoft Learn](https://learn.microsoft.com/en-us/visualstudio/msbuild/errors/msb8041). 37 Ensure the build targets point to other-licenses/nsis/Plugins.liteFirewallW.dll 38 and that the build is done for Unicode. 39 7) Regenerate `mozilla_customizations.diff` while only capturing the file extensions needed: 40 `hg diff --from=central --to=liteFirewall --unified=3 -I "**/*.h" -I "**/*.cpp" -I "other-licenses/nsis/Contrib/liteFirewall/" >> other-licenses/nsis/Contrib/liteFirewall/mozilla_customizations.diff`