mirror of
https://github.com/cmosher01/Epple-II.git
synced 2024-12-29 00:31:40 +00:00
fix WiX build
This commit is contained in:
parent
6a231c3812
commit
f3b551011f
@ -14,11 +14,11 @@ for your particular platform.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
=== Debian Linux Example
|
=== Arch Linux Example
|
||||||
|
|
||||||
[source,sh]
|
[source,sh]
|
||||||
---------------------------------------------------
|
---------------------------------------------------
|
||||||
sudo apt-get install build-essential libsdl1.2-dev # <1>
|
sudo pacman -S base-devel sdl2 # <1>
|
||||||
cd
|
cd
|
||||||
mkdir epple2
|
mkdir epple2
|
||||||
cd epple2
|
cd epple2
|
||||||
@ -26,7 +26,7 @@ wget http://mosher.mine.nu/epple2/download/epple2-latest.tar.gz # <2>
|
|||||||
tar xzvf epple2-latest.tar.gz
|
tar xzvf epple2-latest.tar.gz
|
||||||
mkdir build # <3>
|
mkdir build # <3>
|
||||||
cd build
|
cd build
|
||||||
../epple2-1.0/configure # <4>
|
../epple2-1.1/configure # <4>
|
||||||
make # <5>
|
make # <5>
|
||||||
sudo make install # <6>
|
sudo make install # <6>
|
||||||
---------------------------------------------------
|
---------------------------------------------------
|
||||||
@ -43,48 +43,67 @@ sudo make install # <6>
|
|||||||
|
|
||||||
==== Install MinGW/MSYS
|
==== Install MinGW/MSYS
|
||||||
|
|
||||||
Install MSYS into +C:\msys\+
|
Install MinGW into +C:\MinGW\+
|
||||||
|
|
||||||
Install MinGW into +C:\msys\mingw\+
|
For more information on MinGW, see http://www.mingw.org/[].
|
||||||
|
|
||||||
For more information on MinGW and MSYS, see http://www.mingw.org/[].
|
==== Install WiX
|
||||||
|
|
||||||
|
See http://wixtoolset.org/[] for more information.
|
||||||
|
|
||||||
|
Download the latest version, for example: win38.exe, and install it.
|
||||||
|
|
||||||
|
Run MSYS.BAT and add WiX to your PATH in +~/.profile+. For example:
|
||||||
|
|
||||||
|
[source,sh]
|
||||||
|
--------
|
||||||
|
export PATH="$PATH:/c/Program Files (x86)/WiX Toolset v3.8/bin"
|
||||||
|
--------
|
||||||
|
|
||||||
==== Install SDL
|
==== Install SDL
|
||||||
|
|
||||||
At http://www.libsdl.org/[] find the download page.
|
At http://www.libsdl.org/[] find the download page for SDL 2.0.
|
||||||
Download the ``Development Libraries'' for Win32/mingw, for example:
|
Download the ``Development Libraries'' for MinGW, for example:
|
||||||
|
|
||||||
+SDL-devel-1.2.13-mingw32.tar.gz+ (Mingw32)
|
+SDL2-devel-2.0.1-mingw.tar.gz+
|
||||||
|
|
||||||
and save it to your MSYS home directory (for example, +C:\msys\home\Administrator+).
|
and save it to your MSYS home directory (for example, +C:\Users\Administrator+).
|
||||||
Run MSYS, and at the bash prompt, go to your home directory and
|
Run MSYS.BAT, and at the bash prompt, go to your home directory and
|
||||||
untar the SDL archive to your home directory:
|
untar the SDL archive to your home directory:
|
||||||
|
|
||||||
[source,sh]
|
[source,sh]
|
||||||
--------
|
--------
|
||||||
$ cd
|
$ cd
|
||||||
$ tar xzvf SDL-devel-1.2.13-mingw32.tar.gz
|
$ tar xzvf SDL2-devel-2.0.1-mingw.tar.gz
|
||||||
--------
|
--------
|
||||||
|
|
||||||
Then follow the instructions to install SDL, for example:
|
Then follow the instructions to install SDL, for example:
|
||||||
|
|
||||||
[source,sh]
|
[source,sh]
|
||||||
--------
|
--------
|
||||||
$ cd SDL-1.2.13
|
$ cd SDL2-2.0.1
|
||||||
$ make native
|
$ make native
|
||||||
--------
|
--------
|
||||||
|
|
||||||
|
I also needed to create a symlink for the SDL include files:
|
||||||
|
|
||||||
|
[source,sh]
|
||||||
|
--------
|
||||||
|
$ cd /usr/include
|
||||||
|
$ ln -s SDL2 SDL
|
||||||
|
--------
|
||||||
|
|
||||||
==== Untar Epple ][ Source
|
==== Untar Epple ][ Source
|
||||||
|
|
||||||
Download the Epple ][ Source Distribution
|
Download the Epple ][ Source Distribution
|
||||||
and save it to your MSYS home directory (for example, +C:\msys\home\Administrator+).
|
and save it to your MSYS home directory (for example, +C:\Users\Administrator+).
|
||||||
Run MSYS, and at the bash prompt, go to your home directory and
|
Run MSYS, and at the bash prompt, go to your home directory and
|
||||||
untar the epple2 source distribution tar file. For example:
|
untar the epple2 source distribution tar file. For example:
|
||||||
|
|
||||||
[source,sh]
|
[source,sh]
|
||||||
--------
|
--------
|
||||||
$ cd
|
$ cd
|
||||||
$ tar xzvf epple2-1.0.tar.gz
|
$ tar xzvf epple2-1.1.tar.gz
|
||||||
--------
|
--------
|
||||||
|
|
||||||
==== Build Epple ][
|
==== Build Epple ][
|
||||||
@ -108,11 +127,8 @@ example (from the +buildepple2+ directory you just created):
|
|||||||
|
|
||||||
[source,sh]
|
[source,sh]
|
||||||
--------
|
--------
|
||||||
$ ~/epple2/configure --prefix= \
|
$ ~/epple2/configure --prefix= CXXFLAGS=-I/usr/include LDFLAGS=-L/usr/lib
|
||||||
CXXFLAGS="-I/usr/include -O4 -msse3" \
|
$ make CXXFLAGS="-I/usr/include `sdl2-config --cflags`" LDFLAGS="`sdl2-config --cflags` -static-libstdc++ -static-libgcc"
|
||||||
CFLAGS="-I/usr/include" \
|
|
||||||
LDFLAGS="-L/usr/lib -mconsole -mthreads -mno-cygwin"
|
|
||||||
$ make
|
|
||||||
--------
|
--------
|
||||||
|
|
||||||
If all goes well, it will build without any errors.
|
If all goes well, it will build without any errors.
|
||||||
|
@ -1,61 +1,66 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">
|
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||||
<Product Name="EPPLE ][" Id="d603c69f-4116-4b8e-910f-44f488a772a4" Language="1033" Codepage="1252" Version="1.0.0" Manufacturer="Chris Mosher">
|
<Product Id="*" UpgradeCode="b3bb155f-13e7-4cb8-9c7a-61117c93e36c" Version="1.2" Language="1033" Name="Epple2" Manufacturer="Christopher Alan Mosher">
|
||||||
<Package Id="0ca046fe-0adb-4df3-9fab-048baa55b165" Description="Emulated Apple ][" InstallerVersion="100" Languages="1033" Compressed="yes" />
|
<Package InstallerVersion="300" Compressed="yes"/>
|
||||||
<Media Id="1" Cabinet="Epple2.cab" EmbedCab="yes" DiskPrompt="Epple2.cab" />
|
<Media Id="1" Cabinet="Epple2.cab" EmbedCab="yes" />
|
||||||
<Property Id="DiskPrompt" Value="Epple ][ Installation" />
|
|
||||||
|
|
||||||
<Directory Id="TARGETDIR" Name="SourceDir">
|
<Directory Id="TARGETDIR" Name="SourceDir">
|
||||||
<Directory Id="ProgramFilesFolder" Name="PFiles">
|
<Directory Id="ProgramFilesFolder">
|
||||||
<Directory Id="INSTALLDIR" Name="Epple2">
|
<Directory Id="APPLICATIONROOTDIRECTORY" Name="Epple2">
|
||||||
<Directory Id="bindot" Name=".">
|
<Directory Id="bindot" Name=".">
|
||||||
<Directory Id="bin" Name="bin">
|
<Directory Id="bin" Name="bin" />
|
||||||
<Component Id="MainExecutable" Guid="d3f60e2b-92e2-4a41-b83a-a38591c2e6c3">
|
|
||||||
<File Id="EPPLE2_EXE" Name="epple2.exe" DiskId="1" Source="epple2.exe" Vital="yes">
|
|
||||||
<Shortcut Id="startmenuEpple2" Directory="ProgramMenuDir" Name="Epple2" WorkingDirectory="INSTALLDIR" />
|
|
||||||
<Shortcut Id="desktopEpple2" Directory="DesktopFolder" Name="Epple2" WorkingDirectory="INSTALLDIR" />
|
|
||||||
</File>
|
|
||||||
<RemoveFolder Id="ProgramMenuDir" On="uninstall" />
|
|
||||||
</Component>
|
|
||||||
<Component Id="SDL" Guid="d8e283c0-9af6-4275-8d66-45ca2a0e51ce">
|
|
||||||
<File Id="SDLDLL" Name="sdl.dll" DiskId="1" Source="$(var.SDLDIR)\SDL.dll" />
|
|
||||||
</Component>
|
|
||||||
|
|
||||||
<Component Id="MINGWM" Guid="d8e283c0-9af6-4275-8d66-45ca2a0e51ce">
|
|
||||||
<File Id="MINGWMDLL" Name="mingwm10.dll" DiskId="1" Source="$(var.MINGWMDIR)\mingwm10.dll" />
|
|
||||||
</Component>
|
|
||||||
</Directory>
|
</Directory>
|
||||||
</Directory>
|
|
||||||
|
|
||||||
<Directory Id="etcdot" Name=".">
|
<Directory Id="etcdot" Name=".">
|
||||||
<Directory Id="etc" Name="etc">
|
<Directory Id="etc" Name="etc">
|
||||||
<Directory Id="etc_epple2" Name="epple2">
|
<Directory Id="conf" Name="epple2"/>
|
||||||
<Component Id="ConfigFiles" Guid="73057afd-e28b-48b1-b428-6e2bf029b74d">
|
</Directory>
|
||||||
<File Id="Config" Name="epple2.cfg" LongName="epple2.conf" DiskId="1" Source="..\conf\epple2.conf" Vital="yes" />
|
</Directory>
|
||||||
<File Id="Config_rev0bare" Name="epple2_1.cfg" LongName="epple2.rev0bare.conf" DiskId="1" Source="..\conf\epple2.rev0bare.conf" Vital="yes" />
|
</Directory>
|
||||||
<File Id="Config_a2bare" Name="epple2_2.cfg" LongName="epple2.a2bare.conf" DiskId="1" Source="..\conf\epple2.a2bare.conf" Vital="yes" />
|
</Directory>
|
||||||
<File Id="Config_a2dos31" Name="epple2_3.cfg" LongName="epple2.a2dos31.conf" DiskId="1" Source="..\conf\epple2.a2dos31.conf" Vital="yes" />
|
<Directory Id="ProgramMenuFolder" Name="Programs">
|
||||||
<File Id="Config_a2dos33" Name="epple2_4.cfg" LongName="epple2.a2dos33.conf" DiskId="1" Source="..\conf\epple2.a2dos33.conf" Vital="yes" />
|
<Directory Id="ApplicationProgramsFolder" Name="Epple2"/>
|
||||||
<File Id="Config_a2loaded" Name="epple2_5.cfg" LongName="epple2.a2loaded.conf" DiskId="1" Source="..\conf\epple2.a2loaded.conf" Vital="yes" />
|
</Directory>
|
||||||
|
</Directory>
|
||||||
|
|
||||||
|
<DirectoryRef Id="bin">
|
||||||
|
<Component Id="epple2.exe" Guid="ffd2b182-9144-42c7-a836-2355f132b90a">
|
||||||
|
<File Id="epple2.exe" Source="epple2.exe" KeyPath="yes" Checksum="yes"/>
|
||||||
|
<File Id="SDLDLL" Name="sdl2.dll" Source="$(var.SDLDIR)\SDL2.dll" />
|
||||||
</Component>
|
</Component>
|
||||||
</Directory>
|
</DirectoryRef>
|
||||||
</Directory>
|
|
||||||
</Directory>
|
|
||||||
</Directory>
|
|
||||||
</Directory>
|
|
||||||
|
|
||||||
<Directory Id="ProgramMenuFolder" Name="PMenu" LongName="Programs">
|
<DirectoryRef Id="ApplicationProgramsFolder">
|
||||||
<Directory Id="ProgramMenuDir" Name="Epple2" />
|
<Component Id="ApplicationShortcut" Guid="3ad5f6f0-9def-468a-b12b-b01bebdc754a">
|
||||||
</Directory>
|
<Shortcut Id="ApplicationStartMenuShortcut"
|
||||||
|
Name="Epple2"
|
||||||
|
Description="Emulated Apple 2"
|
||||||
|
Target="[bin]epple2.exe"
|
||||||
|
WorkingDirectory="APPLICATIONROOTDIRECTORY"/>
|
||||||
|
<Shortcut Id="UninstallProduct"
|
||||||
|
Name="Uninstall Epple2"
|
||||||
|
Description="Uninstalls Epple2"
|
||||||
|
Target="[System64Folder]msiexec.exe"
|
||||||
|
Arguments="/x [ProductCode]"/>
|
||||||
|
<RemoveFolder Id="RemoveApplicationProgramsFolder" Directory="ApplicationProgramsFolder" On="uninstall"/>
|
||||||
|
<RegistryValue Root="HKCU" Key="Software\Mosher\Epple2" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
|
||||||
|
</Component>
|
||||||
|
</DirectoryRef>
|
||||||
|
|
||||||
<Directory Id="DesktopFolder" Name="Desktop" />
|
<DirectoryRef Id="conf">
|
||||||
</Directory>
|
<Component Id="ConfigFiles" Guid="73840760-f488-4b60-8bc2-ccdf2196153d">
|
||||||
|
<File Id="Config" Name="epple2.conf" Source="..\conf\epple2.conf" Vital="yes" />
|
||||||
|
<File Id="Config_rev0bare" Name="epple2.rev0bare.conf" Source="..\conf\epple2.rev0bare.conf" Vital="yes" />
|
||||||
|
<File Id="Config_a2bare" Name="epple2.a2bare.conf" Source="..\conf\epple2.a2bare.conf" Vital="yes" />
|
||||||
|
<File Id="Config_a2dos31" Name="epple2.a2dos31.conf" Source="..\conf\epple2.a2dos31.conf" Vital="yes" />
|
||||||
|
<File Id="Config_a2dos33" Name="epple2.a2dos33.conf" Source="..\conf\epple2.a2dos33.conf" Vital="yes" />
|
||||||
|
<File Id="Config_a2loaded" Name="epple2.a2loaded.conf" Source="..\conf\epple2.a2loaded.conf" Vital="yes" />
|
||||||
|
</Component>
|
||||||
|
</DirectoryRef>
|
||||||
|
|
||||||
<Feature Id="Complete" Level="1">
|
<Feature Id="MainApplication" Title="Main Application" Level="1">
|
||||||
<ComponentRef Id="MainExecutable" />
|
<ComponentRef Id="epple2.exe" />
|
||||||
|
<ComponentRef Id="ApplicationShortcut" />
|
||||||
<ComponentRef Id="ConfigFiles" />
|
<ComponentRef Id="ConfigFiles" />
|
||||||
<ComponentRef Id="SDL" />
|
|
||||||
<ComponentRef Id="MINGWM" />
|
|
||||||
</Feature>
|
</Feature>
|
||||||
</Product>
|
</Product>
|
||||||
</Wix>
|
</Wix>
|
||||||
|
Loading…
Reference in New Issue
Block a user