"Fossies" - the Fresh Open Source Software Archive

Member "UXP-2019.10.31/other-licenses/7zstub/README.mcp" (30 Oct 2019, 4591 Bytes) of package /linux/www/UXP-2019.10.31.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 This directory contains the LZMA SDK code used in building the self-extracting
    2 Windows installer.
    3 
    4 The src/ directory contains an almost-unmodified copy of the 7-zip source code
    5 version 18.05, as downloaded from https://www.7-zip.org/a/lzma1805.7z (linked
    6 from https://www.7-zip.org/sdk.html). As stated in DOC/lzma-sdk.txt and on the
    7 web page, this code is in the public domain. A few modifications have been
    8 made to this copy of the source code. Those modifications are contained in
    9 customizations.diff, which should be found in the same directory as this file.
   10 
   11 The palemoon/ and uxp/ directories contain 7zSD.sfx, a 32-bit Windows executable
   12 built from the Visual C++ 6 project found in the src/CPP/7zip/Bundles/SFXSetup/
   13 directory with customizations. The "ReleaseD" configuration was used.
   14 The uxp/ version contains generic vendor information and can be used for any
   15 UXP application's installer with minimal confusion for the user. Basilisk
   16 uses this generic version.
   17 The ReleaseD/ directory contains 7zSD.sfx, which is an unmodified binary
   18 from that build process, ready to be customized for any target application.
   19 Including a compiled binary in the source tree is certainly not preferred, but
   20 is necessary in this case because the code does not build cleanly under more
   21 recent compilers. Using an older toolchain also allows us to keep this
   22 executable running on older Windows versions which are no longer supported by
   23 the build system used for the main application; that means we can show an error
   24 message specifically informing users that their OS is too old, instead of the
   25 generic "not a valid Win32 application" error that Windows would generate if we
   26 used the newer toolchain and that isn't very helpful to most users.
   27 Using a precompiled binary also allows the installer build procedure to work
   28 without a compiler toolchain being configured.
   29 
   30 The palemoon/ and uxp/ directories also contain a manifest which was edited
   31 into 7zSD.sfx's resources after build time. The manifest had to be added
   32 this way because the older resource compiler does not support manifests
   33 (and the 7-zip build files do not try to use any).
   34 
   35 The version info in the compiled binary was also edited after build time. There
   36 isn't a technical reason why the version info changes couldn't be included at
   37 build time, but since the goal is just to avoid confusing users about the origin
   38 of the installer, not to appear to be making the claim that we wrote the
   39 LZMA SDK, a more targeted change is appropriate.
   40 
   41 ** BUILDING 7zSD.sfx yourself **
   42 
   43 Step-by-step instructions for generating 7zSD.sfx:
   44 1) Install Microsoft Visual C++ 6 Professional or Enterprise edition (the
   45    Standard edition does not include the optimizing compiler, so it should
   46    not be used). You'll likely want a virtual machine running Windows XP SP3,
   47    because running VC6 under more modern Windows versions is tricky, to say
   48    the least. Some people have reported success running it on Vista or Win 7,
   49    but please just save yourself the headache!
   50    Once installed, make sure to launch the Visual C++ 6.0 IDE at least once.
   51 2) Install an appropriate Windows SDK version. The Windows XP Service Pack 2 SDK
   52    is known to work well, but that particular version appears to only be
   53    available from archive.org:
   54 https://web.archive.org/web/20080209175723/http://www.microsoft.com:80/msdownload/platformsdk/sdkupdate/XPSP2FULLInstall.htm
   55    Follow the instructions on that archived page to install the SDK.
   56 3) Run the tool included with the SDK that configures Visual C++ to use it.
   57    Start > All Programs > Microsoft Platform SDK for Windows XP SP2 >
   58      Visual Studio Registration > Register PSDK Directories with Visual Studio
   59 4) If using a fresh copy of the LZMA SDK sources, apply the patch in
   60    customizations.diff. The copy in the UXP source tree already has these
   61    changes applied.
   62 5) Open the workspace file at src\CPP\7zip\Bundles\SFXSetup\SFXSetup.dsw and
   63    build it using the "SFXSetup - Win32 ReleaseD" configuration. The output
   64    executable should be at the path ReleaseD\7zSD.sfx relative to SFXSetup.dsw.
   65 6) Use Resource Hacker (available from http://angusj.com/resourcehacker/) to
   66    (if desired) replace the existing icon on 7zSD.sfx and to add the manifest
   67    as a new resource. Also edit the version info resource to replace CompanyName
   68    and LegalCopyright with an appropriate vendor name and FileDescription and
   69    ProductName with an appropriate product name.
   70    Be sure to recompile the resources using the green "play" button in the
   71    toolbar (or by pressing F5) before saving the edited binary file.