diff options
author | Simon Tatham <anakin@pobox.com> | 2017-06-07 06:39:21 +0100 |
---|---|---|
committer | Simon Tatham <anakin@pobox.com> | 2017-06-07 06:39:21 +0100 |
commit | 66f1f5d2bff9900a62db381c8718acb1982f4753 (patch) | |
tree | 443a24de6cc977f88e8cb1be7969bd1e64c6c5a1 | |
parent | 0bc12e1c6704b1d34bebcf54770ee1a6434c3880 (diff) | |
download | wix-on-linux-66f1f5d2bff9900a62db381c8718acb1982f4753.tar.gz wix-on-linux-66f1f5d2bff9900a62db381c8718acb1982f4753.tar.bz2 wix-on-linux-66f1f5d2bff9900a62db381c8718acb1982f4753.zip |
First draft of licence and readme files.
-rw-r--r-- | LICENCE | 22 | ||||
-rw-r--r-- | README.txt | 94 |
2 files changed, 116 insertions, 0 deletions
@@ -0,0 +1,22 @@ | |||
1 | This collection of scripts and libraries to support running WiX under | ||
2 | Linux is copyright 1999,2017 Simon Tatham. All rights reserved. | ||
3 | |||
4 | Permission is hereby granted, free of charge, to any person | ||
5 | obtaining a copy of this software and associated documentation files | ||
6 | (the "Software"), to deal in the Software without restriction, | ||
7 | including without limitation the rights to use, copy, modify, merge, | ||
8 | publish, distribute, sublicense, and/or sell copies of the Software, | ||
9 | and to permit persons to whom the Software is furnished to do so, | ||
10 | subject to the following conditions: | ||
11 | |||
12 | The above copyright notice and this permission notice shall be | ||
13 | included in all copies or substantial portions of the Software. | ||
14 | |||
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS | ||
19 | BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN | ||
20 | ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
21 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
22 | SOFTWARE. | ||
diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..712594f --- /dev/null +++ b/README.txt | |||
@@ -0,0 +1,94 @@ | |||
1 | WiX cross-building support for Linux | ||
2 | ==================================== | ||
3 | |||
4 | This directory contains a suite of Linux shared libraries and | ||
5 | supporting scripts to allow parts of the WiX toolset to run on Linux, | ||
6 | generating MSI Windows installer files without depending on Windows | ||
7 | itself, any official Windows DLLs, or even Wine. | ||
8 | |||
9 | Requirements | ||
10 | ------------ | ||
11 | |||
12 | This system has so far been tested only on Ubuntu 14.04. | ||
13 | |||
14 | To run, you will need some Ubuntu packages installed: | ||
15 | |||
16 | - 'mono-runtime' (to run the main CLR executables from WiX itself) | ||
17 | - 'cabextract' and 'msitools' (the libraries in this suite will | ||
18 | expect to be able to invoke them via fork/exec) | ||
19 | - Python (currently only tested with Python 2) to run the wrapper.py | ||
20 | and makecab.py scripts that are part of this source base. | ||
21 | |||
22 | To compile it, you will also need gcc and autotools. | ||
23 | |||
24 | (There may be other package dependencies I haven't spotted. I've only | ||
25 | tested this on my own machine and haven't done a full analysis of what | ||
26 | might have already been installed here that I didn't realise I was | ||
27 | depending on. If you find problems along these lines, please help make | ||
28 | this section more complete.) | ||
29 | |||
30 | Installation | ||
31 | ------------ | ||
32 | |||
33 | First, get the official WiX distribution. I downloaded the latest WiX | ||
34 | 3 zip file at the time, which was a zip file called wix310-binaries.zip. | ||
35 | |||
36 | Unpack that zip file into a directory of your choice, which I will | ||
37 | refer to below as $WIX_INSTALL_DIR. | ||
38 | |||
39 | Now build and install the stuff in _this_ directory into that same | ||
40 | directory, by running | ||
41 | |||
42 | - ./autogen.sh (assuming you checked this source tree out of git | ||
43 | rather than installing a tarball of it, so that 'configure' won't | ||
44 | already exist) | ||
45 | |||
46 | - ./configure --bindir=$WIX_INSTALL_DIR | ||
47 | |||
48 | - make | ||
49 | |||
50 | - make install | ||
51 | |||
52 | This will install some Python scripts and some .so files into the same | ||
53 | location $WIX_INSTALL_DIR where you unpacked the WiX zip file. In | ||
54 | particular, you should find two files 'candle' and 'light' - actually | ||
55 | symlinks to wrapper.py - dropped into that directory, alongside the | ||
56 | candle.exe and light.exe that came from the WiX distribution. | ||
57 | |||
58 | Running it | ||
59 | ---------- | ||
60 | |||
61 | You should now be able to run $WIX_INSTALL_DIR/candle and | ||
62 | $WIX_INSTALL_DIR/light more or less as if they were the ordinary WiX | ||
63 | 'candle' and 'light' programs. | ||
64 | |||
65 | Ordinary WiX installer source should basically work, except that as a | ||
66 | consequence of running the WiX CLR code on a different OS, this system | ||
67 | will not tolerate backslashes used as directory separators in | ||
68 | pathnames in the .wxs file. You'll need to replace any of those with | ||
69 | forward slashes first (which in my experience does not break | ||
70 | compatibility with WiX run in the usual way). | ||
71 | |||
72 | Those scripts will run candle.exe and light.exe under Mono, and | ||
73 | arrange to load my .so files in place of the native-code Windows DLLs | ||
74 | that those programs need; the .so files will in turn call out to | ||
75 | cabextract, msibuild and my makecab.py script as necessary. | ||
76 | |||
77 | Disclaimer | ||
78 | ---------- | ||
79 | |||
80 | This system is very new and not very tested! I have tested it so far | ||
81 | on exactly _one_ installer, namely PuTTY's one, as of the current | ||
82 | master branch at https://git.tartarus.org/simon/putty.git . It is | ||
83 | extremely possible that some more advanced features of WiX will not | ||
84 | work in this system. I will be interested to hear about them, if so, | ||
85 | but I may not have time and energy to fix them; patches would be | ||
86 | preferable to plain bug reports. | ||
87 | |||
88 | Licence | ||
89 | ------- | ||
90 | |||
91 | The contents of this directory are copyright 2017 Simon Tatham, except | ||
92 | for md5.c, which contains code from PuTTY written in 1999 (also | ||
93 | copyright Simon Tatham). It is redistributable under the MIT licence. | ||
94 | See the file LICENCE for the full licence text. | ||