Hi,
When you say cross-compiling, you mean : compiling from Linux to
Windows, isn't it ?
Because from Linux arch1 to Linux arch2 (i386, powerpc or anything else)
I think that running ./configure --target=<your-target> is enough. Of
course, you have to have the right compiler.
Can anyone confirm ?
It's my impression, I'm not a guru in cross-compiling :-)
Jean
Kurosu wrote:
> Kurosu wrote:
>> 4) I have updated the cross_setup.sh so as to use it within a
>> cross-compilation environment. The cross-compiler name-prefix and
>> path are editable in it.
>
> This should read: "I have updated the create_setup.sh script (see
> cross_setup.diff) ..."
>
> And here is the updated version to make it work under windows/mingw at
> least.
> ------------------------------------------------------------------------
>
> Index: tools/win32_setup/create_setup.sh
> ===================================================================
> --- tools/win32_setup/create_setup.sh (revision 934)
> +++ tools/win32_setup/create_setup.sh (working copy)
> @@ -2,14 +2,13 @@
>
> ## Programs
> PKG_CONFIG=pkg-config
> -MAKE_NSIS=makensis
>
> +# For cross-compiler
> +CROSSDIR="/usr/local/i386-mingw32"
> +
> # Path to which all others are relative
> WORMUXDIR="../.."
>
> -# Path of MinGW installation
> -MINGWDIR=/mingw
> -
> # Windows registry software path
> HKLM_PATH="SOFTWARE\Games\Wormux"
>
> @@ -25,13 +24,24 @@
> rm -rf $NSIS $DEST
>
> # Prepare stuff
> -WIN_WORMUXDIR=$(cd "$WORMUXDIR" && cmd /c cd)
> -LOCAL_PATH=$(cmd /c cd)
> +if [ "$OSTYPE" == "linux-gnu" ]; then
> + MAKE_NSIS="makensis -NOCD"
> + WIN_WORMUXDIR="../.."
> + LOCAL_PATH=$PWD
> + SEP='/'
> +else
> + MAKE_NSIS="makensis //NOCD"
> + WIN_WORMUXDIR=$(cd "$WORMUXDIR" && cmd /c cd)
> + LOCAL_PATH=$(cmd /c cd)
> + SEP='\\'
> +fi
> +
> mkdir -p $DEST
>
> function pkg_path
> {
> - if [ -z "$1" ]; then return ""; fi
> + if [ "$OSTYPE" == "linux-gnu" ]; then echo $CROSSDIR; return; fi
> + if [ -z "$1" ]; then echo ""; return; fi
> var=$($PKG_CONFIG --variable=prefix $1 2>/dev/null)
> if [ -z "$var" ]; then echo "Couldn't find $1, aborting..." 1>&2; exit 1;
> fi
> echo "Found $1 in $var" 1>&2
> @@ -53,8 +63,8 @@
> # Create head
> cat > $NSIS <<EOF
> ;based on MUI Welcome/Finish Page Example Script written by Joost Verburg
> -!define MUI_ICON "${WIN_WORMUXDIR}\src\wormux.ico"
> -!define MUI_UNICON ${LOCAL_PATH}\uninstall.ico
> +!define MUI_ICON "${WIN_WORMUXDIR}${SEP}src${SEP}wormux.ico"
> +!define MUI_UNICON ${LOCAL_PATH}${SEP}uninstall.ico
> !define MUI_COMPONENTSPAGE_SMALLDESC
> !define MUI_LANGDLL_ALWAYSSHOW
> !include "MUI.nsh"
> @@ -65,7 +75,7 @@
> Name "Wormux"
>
> ;General
> -OutFile "${LOCAL_PATH}\Wormux-Setup-${WORMUX_VERSION}.exe"
> +OutFile "${LOCAL_PATH}${SEP}Wormux-Setup-${WORMUX_VERSION}.exe"
> SetCompressor $COMPRESSION
>
> !define MUI_LANGDLL_REGISTRY_ROOT "HKLM"
> @@ -89,42 +99,42 @@
>
> ;Languages
> !insertmacro MUI_LANGUAGE "English"
> -LicenseLangString WormuxLicense "English"
> "${WIN_WORMUXDIR}\doc\license\COPYING.en.txt"
> +LicenseLangString WormuxLicense "English"
> "${WIN_WORMUXDIR}${SEP}doc${SEP}license${SEP}COPYING.en.txt"
> LangString TITLE_Wormux "English" "Wormux"
> LangString DESC_Wormux "English" "Installs the game Wormux, version
> ${WORMUX_VERSION}"
>
> !insertmacro MUI_LANGUAGE "French"
> -LicenseLangString WormuxLicense "French"
> "${WIN_WORMUXDIR}\doc\license\COPYING.fr.txt"
> +LicenseLangString WormuxLicense "French"
> "${WIN_WORMUXDIR}${SEP}doc${SEP}license${SEP}COPYING.fr.txt"
> LangString TITLE_Wormux "French" "Wormux"
> LangString DESC_Wormux "French" "Installe le jeu Wormux, en version
> ${WORMUX_VERSION}"
>
> !insertmacro MUI_LANGUAGE "German"
> -LicenseLangString WormuxLicense "German"
> "${WIN_WORMUXDIR}\doc\license\COPYING.de.txt"
> +LicenseLangString WormuxLicense "German"
> "${WIN_WORMUXDIR}${SEP}doc${SEP}license${SEP}COPYING.de.txt"
> LangString TITLE_Wormux "German" "Wormux"
> LangString DESC_Wormux "German" "Das Spiel Wormux, Version
> ${WORMUX_VERSION} anbringen"
>
> !insertmacro MUI_LANGUAGE "Spanish"
> -LicenseLangString WormuxLicense "Spanish"
> "${WIN_WORMUXDIR}\doc\license\COPYING.es.txt"
> +LicenseLangString WormuxLicense "Spanish"
> "${WIN_WORMUXDIR}${SEP}doc${SEP}license${SEP}COPYING.es.txt"
> LangString TITLE_Wormux "Spanish" "Wormux"
> LangString DESC_Wormux "Spanish" "Instala el juego Wormux, versi
> !insertmacro MUI_LANGUAGE "Dutch"
> -LicenseLangString WormuxLicense "Dutch"
> "${WIN_WORMUXDIR}\doc\license\COPYING.nl.txt"
> +LicenseLangString WormuxLicense "Dutch"
> "${WIN_WORMUXDIR}${SEP}doc${SEP}license${SEP}COPYING.nl.txt"
> LangString TITLE_Wormux "Dutch" "Wormux"
> LangString DESC_Wormux "Dutch" "Wormux ${WORMUX_VERSION}"
>
> !insertmacro MUI_LANGUAGE "Polish"
> -LicenseLangString WormuxLicense "Polish"
> "${WIN_WORMUXDIR}\doc\license\COPYING.pl.txt"
> +LicenseLangString WormuxLicense "Polish"
> "${WIN_WORMUXDIR}${SEP}doc${SEP}license${SEP}COPYING.pl.txt"
> LangString TITLE_Wormux "Polish" "Wormux"
> LangString DESC_Wormux "Polish" "Wormux ${WORMUX_VERSION}"
>
> !insertmacro MUI_LANGUAGE "Russian"
> -LicenseLangString WormuxLicense "Russian"
> "${WIN_WORMUXDIR}\doc\license\COPYING.ru.txt"
> +LicenseLangString WormuxLicense "Russian"
> "${WIN_WORMUXDIR}${SEP}doc${SEP}license${SEP}COPYING.ru.txt"
> LangString TITLE_Wormux "Russian" "Wormux"
> LangString DESC_Wormux "Russian" "Wormux ${WORMUX_VERSION}"
>
> !insertmacro MUI_LANGUAGE "Slovenian"
> -LicenseLangString WormuxLicense "Slovenian"
> "${WIN_WORMUXDIR}\doc\license\COPYING.sk.txt"
> +LicenseLangString WormuxLicense "Slovenian"
> "${WIN_WORMUXDIR}${SEP}doc${SEP}license${SEP}COPYING.sk.txt"
> LangString TITLE_Wormux "Slovenian" "Wormux"
> LangString DESC_Wormux "Slovenian" "Wormux ${WORMUX_VERSION}"
>
> @@ -142,10 +152,10 @@
> Section \$(TITLE_Wormux) Sec_Wormux
> ; Set output path to the installation directory.
> SetOutPath \$INSTDIR
> - File "${WIN_WORMUXDIR}\src\wormux.ico"
> + File "${WIN_WORMUXDIR}${SEP}src${SEP}wormux.ico"
> ; Executing in tmpdir, looking for file in folder below
> - File "${LOCAL_PATH}\uninstall.ico"
> - File "${WIN_WORMUXDIR}\src\wormux.exe"
> + File "${LOCAL_PATH}${SEP}uninstall.ico"
> + File "${WIN_WORMUXDIR}${SEP}src${SEP}wormux.exe"
> EOF
>
> # Glib (gobject, gthread, glib & gmodule)
> @@ -167,10 +177,13 @@
>
> # Clean up before non-strippable files
> # WARNING Stripping some dlls corrupts them beyond use
> -strip "$DEST/"*.dll "$WORMUXDIR/src/"*.exe
> +if [ "$OSTYPE" == "linux-gnu" ]; then STRIP=i386-mingw32-strip
> +else STRIP=strip; fi
> +$STRIP "$DEST/"*.dll "$WORMUXDIR/src/"*.exe
>
> # Files that must not be stripped (all of SDL)
> -SDL_PATH=$(sdl-config --prefix)
> +if [ "$OSTYPE" == "linux-gnu" ]; then SDL_PATH=$CROSSDIR
> +else SDL_PATH=$(sdl-config --prefix); fi
> cp "$SDL_PATH/bin/SDL_mixer.dll" "$SDL_PATH/bin/SDL_ttf.dll" \
> "$SDL_PATH/bin/SDL_image.dll" "$SDL_PATH/bin/SDL.dll" \
> "$SDL_PATH/bin/SDL_net.dll" "$GLIB_PATH/bin/intl.dll" \
> @@ -180,7 +193,7 @@
> # Continue producing installer
> cat >> $NSIS <<EOF
> ; Dlls and co
> - File "*.dll"
> + File "$DEST${SEP}*.dll"
> EOF
>
> ## Locale
> @@ -189,20 +202,20 @@
> lg=${gmo%%.gmo}
> lg=${lg//.*\//}
> echo " SetOutPath \$INSTDIR\\locale\\$lg\\LC_MESSAGES" >> $NSIS
> - echo " File /oname=wormux.mo \"$WIN_WORMUXDIR\\po\\$lg.gmo\"" >> $NSIS
> + echo " File /oname=wormux.mo \"$WIN_WORMUXDIR${SEP}po${SEP}$lg.gmo\"" >>
> $NSIS
> done
>
> ## Data - I love this syntax
> cat >> $NSIS <<EOF
> ; Data
> SetOutPath \$INSTDIR
> - File /r /x .svn /x Makefile* /x Makefile.* "${WIN_WORMUXDIR}\\data"
> + File /r /x .svn /x Makefile* /x Makefile.* "${WIN_WORMUXDIR}${SEP}data"
> EOF
>
> ## License
> cat >> $NSIS <<EOF
> ; Licenses
> - File /r /x .svn "${WIN_WORMUXDIR}\\doc\\license"
> + File /r /x .svn "${WIN_WORMUXDIR}${SEP}doc${SEP}license"
> EOF
>
> # End
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Wormux-dev mailing list
> [email protected]
> https://mail.gna.org/listinfo/wormux-dev
>
_______________________________________________
Wormux-dev mailing list
[email protected]
https://mail.gna.org/listinfo/wormux-dev