Skip to content

Instantly share code, notes, and snippets.

@gr883e5b
Created September 22, 2012 14:44
Show Gist options
  • Save gr883e5b/3766377 to your computer and use it in GitHub Desktop.
Save gr883e5b/3766377 to your computer and use it in GitHub Desktop.
msys/mingw cross compile env
@echo off
rem mingw-get:
rem http://sourceforge.net/projects/mingw/files/Installer/mingw-get/
rem
rem cross-compile: bin
rem http://xhmikosr.1f0.de/
rem http://komisar.gin.by/
rem
rem strawberry perl: bin
rem http://strawberryperl.com/releases.html
rem
rem nasm: src
rem http://www.nasm.us/pub/nasm/releasebuilds/2.10.05/nasm-2.10.05.tar.xz
setlocal
set PROFILE_XML=.\var\lib\mingw-get\data\profile.xml
set FSTAB=.\etc\fstab
set DOWNLOAD_DIR=./var/cache
call :GEN_PROFILE_XML
call :INSTALL_MSYS
call :INSTALL_7ZA
call :INSTALL_GIT_MINIMUM
call :INSTALL_PERL
call :GEN_FSTAB
rem = '--*-Perl-*--
if "%OS%" == "Windows_NT" goto WinNT
.\strawberry\perl\bin\perl -x -S "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9
goto endofperl
:WinNT
.\strawberry\perl\bin\perl -x -S %0 %*
if NOT "%COMSPEC%" == "%SystemRoot%\system32\cmd.exe" goto endofperl
if %errorlevel% == 9009 echo You do not have Perl in your PATH.
if errorlevel 1 goto script_failed_so_exit_with_non_zero_val 2>nul
goto endofperl
@rem ';
#!/strawberry/perl/bin/perl
#line 15
use strict;
use warnings;
print "Hello World!\n";
my $profile = "./etc/profile";
my $buf = file_get_contents($profile);
my $path = '.:/strawberry/perl/bin:/d/_common_/eac3to:/usr/local/bin:/mingw/x86_64-w64-mingw32/bin:/mingw/bin:/bin:$PATH';
$buf =~ s/PATH=".*?"/PATH="$path"/;
$buf =~ s/(alias clear=clsb).*(cd "\$HOME")/$1\nalias ls='ls -F --color --show-control-chars -al'\n$2/gis;
$buf .= "\n# genetated\n";
open FH, '>' , $profile or die "file open error: $!";
print FH $buf;
close FH;
sub file_get_contents{
my $filename = $_[0];
open my $fh, '<', $filename;
my $buf = do { local $/; <$fh> };
close $fh;
return $buf;
}
__END__
endlocal
exit /b
rem ----------------------------------------------------------------
:INSTALL_GIT_MINIMUM
echo install git
if not exist .\bin\git.exe (
.\bin\wget http://msysgit.googlecode.com/files/msysGit-netinstall-1.7.11-preview20120620.exe -nc -P %DOWNLOAD_DIR%
.\bin\7za e %DOWNLOAD_DIR%\msysGit-netinstall-1.7.11-preview20120620.exe installer-tmp/bin -aos -o./bin
.\bin\7za e %DOWNLOAD_DIR%\msysGit-netinstall-1.7.11-preview20120620.exe installer-tmp/etc -aos -o./etc
.\bin\7za e %DOWNLOAD_DIR%\msysGit-netinstall-1.7.11-preview20120620.exe installer-tmp/libexec/git-core -aos -o./libexec/git-core
)
.\bin\git --version
exit /b
:INSTALL_PERL
echo install strawberry perl
.\bin\wget http://strawberryperl.com/download/5.16.1.1/strawberry-perl-5.16.1.1-64bit.zip -nc -P %DOWNLOAD_DIR%
.\bin\7za x %DOWNLOAD_DIR%\strawberry-perl-5.16.1.1-64bit.zip -aos -o./strawberry
echo install strawberry perl
copy .\strawberry\c\bin\ar.exe .\c\bin\x86_64-w64-mingw32-ar.exe
copy .\strawberry\c\bin\ranlib.exe .\c\bin\x86_64-w64-mingw32-ranlib.exe
cd .\strawberry
call relocation.pl.bat
cd ..\
exit /b
:INSTALL_7ZA
echo install 7za
if not exist .\bin\7za.exe (
.\bin\wget http://sourceforge.net/projects/sevenzip/files/7-Zip/9.20/7za920.zip -nc -P %DOWNLOAD_DIR%
.\bin\unzip -n %DOWNLOAD_DIR%/7za920.zip 7za.exe -d ./bin
)
.\bin\7za -h
exit /b
:INSTALL_MSYS
rem .\bin\mingw-get update
.\bin\mingw-get install msys-base-bin
.\bin\mingw-get install msys-wget-bin
.\bin\mingw-get install msys-patch-bin
.\bin\mingw-get install msys-unzip-bin
rem for tar
.\bin\mingw-get install msys-libbz2-dll
exit /b
:GEN_FSTAB
(
echo %~dp0strawberry\c /mingw
) > %FSTAB%
exit /b
:GEN_PROFILE_XML
(
echo ^<?xml version="1.0" encoding="UTF-8" standalone="yes"?^>
echo ^<profile project="MinGW" application="mingw-get"^>
echo ^<repository uri="http://prdownloads.sourceforge.net/mingw/%%F.xml.lzma?download"^>
echo ^</repository^>
echo ^<system-map id="default"^>
echo ^<sysroot subsystem="mingw32" path="%%R" /^>
echo ^<!--sysroot subsystem="MSYS" path="%%R/msys/1.0" /--^>
echo ^<sysroot subsystem="MSYS" path="%%R" /^>
echo ^</system-map^>
echo ^</profile^>
echo ^<!-- $RCSfile: profile.xml,v $: end of file --^>
) > %PROFILE_XML%
exit /b
:endofperl
@echo off
rem http://xhmikosr.1f0.de/
rem http://komisar.gin.by/
setlocal
set PROFILE=.\var\lib\mingw-get\data\profile.xml
set DOWNLOAD_DIR=./var/cache
if not exist %PROFILE% (
call :GEN_PROFILE
echo * generate %PROFILE%
) else (
echo * %PROFILE% is already exists
)
if not exist .\msys.bat (
call :INSTALL_MSYS
) else (
echo * Maybe msys/mingw is already installed
rem .\bin\mingw-get upgrade
)
.\bin\perl install-mingw-packages.pl
endlocal
exit /b
rem ----------------------------------------------------------------
:GEN_PROFILE
(
echo ^<?xml version="1.0" encoding="UTF-8" standalone="yes"?^>
echo ^<profile project="MinGW" application="mingw-get"^>
echo ^<repository uri="http://prdownloads.sourceforge.net/mingw/%%F.xml.lzma?download"^>
echo ^</repository^>
echo ^<system-map id="default"^>
echo ^<sysroot subsystem="mingw32" path="%%R" /^>
echo ^<!--sysroot subsystem="MSYS" path="%%R/msys/1.0" /--^>
echo ^<sysroot subsystem="MSYS" path="%%R" /^>
echo ^</system-map^>
echo ^</profile^>
echo ^<!-- $RCSfile: profile.xml,v $: end of file --^>
) >> %PROFILE%
exit /b
:INSTALL_MSYS
.\bin\mingw-get update
rem .\bin\mingw-get install mingw-developer-toolkit-bin
rem .\bin\mingw-get install mingw32-autoconf-bin
rem .\bin\mingw-get install mingw32-autoconf-lic
rem .\bin\mingw-get install mingw32-autoconf2.1-bin
rem .\bin\mingw-get install mingw32-autoconf2.1-doc
rem .\bin\mingw-get install mingw32-autoconf2.1-lic
rem .\bin\mingw-get install mingw32-autoconf2.5-bin
rem .\bin\mingw-get install mingw32-autoconf2.5-doc
rem .\bin\mingw-get install mingw32-autoconf2.5-lic
rem .\bin\mingw-get install mingw32-automake-bin
rem .\bin\mingw-get install mingw32-automake-lic
rem .\bin\mingw-get install mingw32-automake1.10-bin
rem .\bin\mingw-get install mingw32-automake1.10-doc
rem .\bin\mingw-get install mingw32-automake1.10-lic
rem .\bin\mingw-get install mingw32-automake1.11-bin
rem .\bin\mingw-get install mingw32-automake1.11-doc
rem .\bin\mingw-get install mingw32-automake1.11-lic
rem .\bin\mingw-get install mingw32-automake1.4-bin
rem .\bin\mingw-get install mingw32-automake1.4-doc
rem .\bin\mingw-get install mingw32-automake1.4-lic
rem .\bin\mingw-get install mingw32-automake1.5-bin
rem .\bin\mingw-get install mingw32-automake1.5-doc
rem .\bin\mingw-get install mingw32-automake1.5-lic
rem .\bin\mingw-get install mingw32-automake1.6-bin
rem .\bin\mingw-get install mingw32-automake1.6-doc
rem .\bin\mingw-get install mingw32-automake1.6-lic
rem .\bin\mingw-get install mingw32-automake1.7-bin
rem .\bin\mingw-get install mingw32-automake1.7-doc
rem .\bin\mingw-get install mingw32-automake1.7-lic
rem .\bin\mingw-get install mingw32-automake1.8-bin
rem .\bin\mingw-get install mingw32-automake1.8-doc
rem .\bin\mingw-get install mingw32-automake1.8-lic
rem .\bin\mingw-get install mingw32-automake1.9-bin
rem .\bin\mingw-get install mingw32-automake1.9-doc
rem .\bin\mingw-get install mingw32-automake1.9-lic
rem .\bin\mingw-get install mingw32-autotools-bin
rem .\bin\mingw-get install mingw32-base-bin
rem .\bin\mingw-get install mingw32-basic-bsdtar-bin
rem .\bin\mingw-get install mingw32-binutils-bin
rem .\bin\mingw-get install mingw32-binutils-doc
rem .\bin\mingw-get install mingw32-binutils-lang
rem .\bin\mingw-get install mingw32-bsdcpio-bin
rem .\bin\mingw-get install mingw32-bsdtar-bin
rem .\bin\mingw-get install mingw32-bzip2-bin
rem .\bin\mingw-get install mingw32-bzip2-dev
rem .\bin\mingw-get install mingw32-bzip2-doc
rem .\bin\mingw-get install mingw32-bzip2-lic
rem .\bin\mingw-get install mingw32-bzip2-man
rem .\bin\mingw-get install mingw32-dos2unix-bin
rem .\bin\mingw-get install mingw32-dos2unix-doc
rem .\bin\mingw-get install mingw32-dos2unix-lic
rem .\bin\mingw-get install mingw32-expat-bin
rem .\bin\mingw-get install mingw32-expat-doc
rem .\bin\mingw-get install mingw32-expat-lic
rem .\bin\mingw-get install mingw32-gcc-bin
rem .\bin\mingw-get install mingw32-gcc-doc
rem .\bin\mingw-get install mingw32-gcc-lang
rem .\bin\mingw-get install mingw32-gcc-lic
rem .\bin\mingw-get install mingw32-gcc-ada-bin
rem .\bin\mingw-get install mingw32-gcc-fortran-bin
rem .\bin\mingw-get install mingw32-gcc-g++-bin
rem .\bin\mingw-get install mingw32-gcc-objc-bin
rem .\bin\mingw-get install mingw32-gcc-tools-epoch2-autoconf-bin
rem .\bin\mingw-get install mingw32-gcc-tools-epoch2-autoconf-doc
rem .\bin\mingw-get install mingw32-gcc-tools-epoch2-autoconf-lic
rem .\bin\mingw-get install mingw32-gcc-tools-epoch2-automake-bin
rem .\bin\mingw-get install mingw32-gcc-tools-epoch2-automake-doc
rem .\bin\mingw-get install mingw32-gcc-tools-epoch2-automake-lic
rem .\bin\mingw-get install mingw32-gcc-v3-ada-bin
rem .\bin\mingw-get install mingw32-gcc-v3-core-bin
rem .\bin\mingw-get install mingw32-gcc-v3-fortran-bin
rem .\bin\mingw-get install mingw32-gcc-v3-g++-bin
rem .\bin\mingw-get install mingw32-gcc-v3-java-bin
rem .\bin\mingw-get install mingw32-gcc-v3-objc-bin
rem .\bin\mingw-get install mingw32-gdb-bin
rem .\bin\mingw-get install mingw32-gdb-doc
rem .\bin\mingw-get install mingw32-gdb-python-bin
rem .\bin\mingw-get install mingw32-gdb-python-doc
rem .\bin\mingw-get install mingw32-gendef-bin
rem .\bin\mingw-get install mingw32-gendef-doc
rem .\bin\mingw-get install mingw32-gendef-lic
rem .\bin\mingw-get install mingw32-gettext-bin
rem .\bin\mingw-get install mingw32-gettext-dev
rem .\bin\mingw-get install mingw32-gettext-doc
rem .\bin\mingw-get install mingw32-gettext-ext
rem .\bin\mingw-get install mingw32-gettext-lic
rem .\bin\mingw-get install mingw32-gmp-dev
rem .\bin\mingw-get install mingw32-gmp-doc
rem .\bin\mingw-get install mingw32-gmp-lic
rem .\bin\mingw-get install mingw32-libarchive-dev
rem .\bin\mingw-get install mingw32-libarchive-dll
rem .\bin\mingw-get install mingw32-libarchive-doc
rem .\bin\mingw-get install mingw32-libarchive-lic
rem .\bin\mingw-get install mingw32-libasprintf-dll
rem .\bin\mingw-get install mingw32-libbz2-dll
rem .\bin\mingw-get install mingw32-libcharset-dll
rem .\bin\mingw-get install mingw32-libexpat-dev
rem .\bin\mingw-get install mingw32-libexpat-dll
rem .\bin\mingw-get install mingw32-libgcc-dll
rem .\bin\mingw-get install mingw32-libgettextpo-dll
rem .\bin\mingw-get install mingw32-libgfortran-dll
rem .\bin\mingw-get install mingw32-libgmp-dll
rem .\bin\mingw-get install mingw32-libgmpxx-dll
rem .\bin\mingw-get install mingw32-libgnat-dll
rem .\bin\mingw-get install mingw32-libgomp-dll
rem .\bin\mingw-get install mingw32-libiconv-bin
rem .\bin\mingw-get install mingw32-libiconv-dev
rem .\bin\mingw-get install mingw32-libiconv-dll
rem .\bin\mingw-get install mingw32-libiconv-doc
rem .\bin\mingw-get install mingw32-libiconv-lic
rem .\bin\mingw-get install mingw32-libintl-dll
rem .\bin\mingw-get install mingw32-libltdl-dev
rem .\bin\mingw-get install mingw32-libltdl-dll
rem .\bin\mingw-get install mingw32-liblzma-dev
rem .\bin\mingw-get install mingw32-liblzma-dll
rem .\bin\mingw-get install mingw32-libminizip-dev
rem .\bin\mingw-get install mingw32-libminizip-dll
rem .\bin\mingw-get install mingw32-libmpc-dll
rem .\bin\mingw-get install mingw32-libmpfr-dll
rem .\bin\mingw-get install mingw32-libobjc-dll
rem .\bin\mingw-get install mingw32-libpdcurses-dev
rem .\bin\mingw-get install mingw32-libpdcurses-dll
rem .\bin\mingw-get install mingw32-libpopt-dev
rem .\bin\mingw-get install mingw32-libpopt-dll
rem .\bin\mingw-get install mingw32-libpopt-lang
rem .\bin\mingw-get install mingw32-libpthread-old-dll
rem .\bin\mingw-get install mingw32-libpthreadgc-dll
rem .\bin\mingw-get install mingw32-libpthreadgce-dll
rem .\bin\mingw-get install mingw32-libquadmath-dll
rem .\bin\mingw-get install mingw32-libquserex-dll
rem .\bin\mingw-get install mingw32-libssp-dll
rem .\bin\mingw-get install mingw32-libstdc++-dll
rem .\bin\mingw-get install mingw32-libtool-bin
rem .\bin\mingw-get install mingw32-libtool-doc
rem .\bin\mingw-get install mingw32-libtool-lic
rem .\bin\mingw-get install mingw32-libunistring-dev
rem .\bin\mingw-get install mingw32-libunistring-dll
rem .\bin\mingw-get install mingw32-libunistring-doc
rem .\bin\mingw-get install mingw32-libunistring-lic
rem .\bin\mingw-get install mingw32-libz-dev
rem .\bin\mingw-get install mingw32-libz-dll
rem .\bin\mingw-get install mingw32-lua-bin
rem .\bin\mingw-get install mingw32-lua-dev
rem .\bin\mingw-get install mingw32-lua-dll
rem .\bin\mingw-get install mingw32-lua-doc
rem .\bin\mingw-get install mingw32-lua-lic
rem .\bin\mingw-get install mingw32-lua-man
rem .\bin\mingw-get install mingw32-make-bin
rem .\bin\mingw-get install mingw32-make-doc
rem .\bin\mingw-get install mingw32-make-lang
rem .\bin\mingw-get install mingw32-make-lic
rem .\bin\mingw-get install mingw32-mgwport-bin
rem .\bin\mingw-get install mingw32-mgwport-doc
rem .\bin\mingw-get install mingw32-mgwport-lic
rem .\bin\mingw-get install mingw32-mingw-get-bin
rem .\bin\mingw-get install mingw32-mingw-get-lic
rem .\bin\mingw-get install mingw32-mingw-utils-bin
rem .\bin\mingw-get install mingw32-mingw-utils-doc
rem .\bin\mingw-get install mingw32-mingw-utils-lic
rem .\bin\mingw-get install mingw32-mingwrt-dev
rem .\bin\mingw-get install mingw32-mingwrt-dll
rem .\bin\mingw-get install mingw32-minizip-bin
rem .\bin\mingw-get install mingw32-mpc-dev
rem .\bin\mingw-get install mingw32-mpc-doc
rem .\bin\mingw-get install mingw32-mpc-lic
rem .\bin\mingw-get install mingw32-mpfr-dev
rem .\bin\mingw-get install mingw32-mpfr-doc
rem .\bin\mingw-get install mingw32-mpfr-lic
rem .\bin\mingw-get install mingw32-pdcurses-bin
rem .\bin\mingw-get install mingw32-pdcurses-doc
rem .\bin\mingw-get install mingw32-pdcurses-lic
rem .\bin\mingw-get install mingw32-pexports-bin
rem .\bin\mingw-get install mingw32-pexports-doc
rem .\bin\mingw-get install mingw32-pexports-lic
rem .\bin\mingw-get install mingw32-pkginfo-bin
rem .\bin\mingw-get install mingw32-popt-doc
rem .\bin\mingw-get install mingw32-popt-lic
rem .\bin\mingw-get install mingw32-pthreads-w32-dev
rem .\bin\mingw-get install mingw32-pthreads-w32-doc
rem .\bin\mingw-get install mingw32-pthreads-w32-lic
rem .\bin\mingw-get install mingw32-w32api-dev
rem .\bin\mingw-get install mingw32-xz-bin
rem .\bin\mingw-get install mingw32-xz-doc
rem .\bin\mingw-get install mingw32-xz-lang
rem .\bin\mingw-get install mingw32-xz-lic
rem .\bin\mingw-get install mingw32-zlib-doc
rem .\bin\mingw-get install mingw32-zlib-lic
rem .\bin\mingw-get install mingw32-zlib-man
rem .\bin\mingw-get install msys-autoconf-bin
rem .\bin\mingw-get install msys-autoconf-doc
rem .\bin\mingw-get install msys-autoconf-lic
rem .\bin\mingw-get install msys-autogen-bin
rem .\bin\mingw-get install msys-autogen-doc
rem .\bin\mingw-get install msys-autogen-lic
rem .\bin\mingw-get install msys-automake-bin
rem .\bin\mingw-get install msys-automake-doc
rem .\bin\mingw-get install msys-automake-lic
rem .\bin\mingw-get install msys-base-bin
.\bin\mingw-get install msys-bash-bin
rem .\bin\mingw-get install msys-bash-doc
rem .\bin\mingw-get install msys-bash-lic
rem .\bin\mingw-get install msys-binutils-bin
rem .\bin\mingw-get install msys-binutils-doc
rem .\bin\mingw-get install msys-binutils-lic
rem .\bin\mingw-get install msys-bison-bin
rem .\bin\mingw-get install msys-bison-doc
rem .\bin\mingw-get install msys-bison-lang
rem .\bin\mingw-get install msys-bison-lic
rem .\bin\mingw-get install msys-bison-rtm
rem .\bin\mingw-get install msys-bsdcpio-bin
rem .\bin\mingw-get install msys-bsdtar-bin
rem .\bin\mingw-get install msys-bzip2-bin
rem .\bin\mingw-get install msys-bzip2-doc
rem .\bin\mingw-get install msys-bzip2-lic
rem .\bin\mingw-get install msys-console-bin
rem .\bin\mingw-get install msys-console-doc
rem .\bin\mingw-get install msys-console-lic
.\bin\mingw-get install msys-core-bin
rem .\bin\mingw-get install msys-core-dbg
rem .\bin\mingw-get install msys-core-dev
rem .\bin\mingw-get install msys-core-doc
rem .\bin\mingw-get install msys-core-ext
rem .\bin\mingw-get install msys-core-lic
rem .\bin\mingw-get install msys-coreutils-bin
rem .\bin\mingw-get install msys-coreutils-doc
rem .\bin\mingw-get install msys-coreutils-ext
rem .\bin\mingw-get install msys-coreutils-lang
rem .\bin\mingw-get install msys-coreutils-lic
rem .\bin\mingw-get install msys-crypt-bin
rem .\bin\mingw-get install msys-crypt-doc
rem .\bin\mingw-get install msys-crypt-lic
rem .\bin\mingw-get install msys-cvs-bin
rem .\bin\mingw-get install msys-cvs-doc
rem .\bin\mingw-get install msys-cvs-lang
rem .\bin\mingw-get install msys-cvs-lic
rem .\bin\mingw-get install msys-cygutils-bin
rem .\bin\mingw-get install msys-cygutils-doc
rem .\bin\mingw-get install msys-cygutils-lic
rem .\bin\mingw-get install msys-dash-bin
rem .\bin\mingw-get install msys-dash-doc
rem .\bin\mingw-get install msys-dash-lic
rem .\bin\mingw-get install msys-diffstat-bin
rem .\bin\mingw-get install msys-diffstat-doc
rem .\bin\mingw-get install msys-diffstat-lic
rem .\bin\mingw-get install msys-diffutils-bin
rem .\bin\mingw-get install msys-diffutils-doc
rem .\bin\mingw-get install msys-diffutils-lang
rem .\bin\mingw-get install msys-diffutils-lic
rem .\bin\mingw-get install msys-dos2unix-bin
rem .\bin\mingw-get install msys-dos2unix-doc
rem .\bin\mingw-get install msys-dos2unix-lic
rem .\bin\mingw-get install msys-expat-bin
rem .\bin\mingw-get install msys-expat-doc
rem .\bin\mingw-get install msys-expat-lic
rem .\bin\mingw-get install msys-file-bin
rem .\bin\mingw-get install msys-file-doc
rem .\bin\mingw-get install msys-file-lic
rem .\bin\mingw-get install msys-findutils-bin
rem .\bin\mingw-get install msys-findutils-doc
rem .\bin\mingw-get install msys-findutils-lang
rem .\bin\mingw-get install msys-findutils-lic
rem .\bin\mingw-get install msys-flex-bin
rem .\bin\mingw-get install msys-flex-doc
rem .\bin\mingw-get install msys-flex-lang
rem .\bin\mingw-get install msys-flex-lic
rem .\bin\mingw-get install msys-gawk-bin
rem .\bin\mingw-get install msys-gawk-doc
rem .\bin\mingw-get install msys-gawk-lang
rem .\bin\mingw-get install msys-gawk-lic
rem .\bin\mingw-get install msys-gcc-bin
rem .\bin\mingw-get install msys-gcc-doc
rem .\bin\mingw-get install msys-gcc-lic
rem .\bin\mingw-get install msys-gdbm-bin
rem .\bin\mingw-get install msys-gdbm-doc
rem .\bin\mingw-get install msys-gdbm-lic
rem .\bin\mingw-get install msys-gettext-bin
rem .\bin\mingw-get install msys-gettext-dev
rem .\bin\mingw-get install msys-gettext-doc
rem .\bin\mingw-get install msys-gettext-ext
rem .\bin\mingw-get install msys-gettext-lic
rem .\bin\mingw-get install msys-gmp-doc
rem .\bin\mingw-get install msys-gmp-lic
.\bin\mingw-get install msys-grep-bin
rem .\bin\mingw-get install msys-grep-doc
rem .\bin\mingw-get install msys-grep-lang
rem .\bin\mingw-get install msys-grep-lic
rem .\bin\mingw-get install msys-groff-bin
rem .\bin\mingw-get install msys-groff-doc
rem .\bin\mingw-get install msys-groff-ext
rem .\bin\mingw-get install msys-groff-lic
rem .\bin\mingw-get install msys-groff-smp
rem .\bin\mingw-get install msys-guile-bin
rem .\bin\mingw-get install msys-guile-doc
rem .\bin\mingw-get install msys-guile-lic
.\bin\mingw-get install msys-gzip-bin
rem .\bin\mingw-get install msys-gzip-doc
rem .\bin\mingw-get install msys-gzip-lic
rem .\bin\mingw-get install msys-help2man-bin
rem .\bin\mingw-get install msys-help2man-doc
rem .\bin\mingw-get install msys-help2man-lic
rem .\bin\mingw-get install msys-inetutils-bin
rem .\bin\mingw-get install msys-inetutils-dev
rem .\bin\mingw-get install msys-inetutils-doc
rem .\bin\mingw-get install msys-inetutils-lic
.\bin\mingw-get install msys-less-bin
rem .\bin\mingw-get install msys-less-doc
rem .\bin\mingw-get install msys-less-lic
rem .\bin\mingw-get install msys-libarchive-dev
rem .\bin\mingw-get install msys-libarchive-dll
rem .\bin\mingw-get install msys-libarchive-doc
rem .\bin\mingw-get install msys-libarchive-lic
rem .\bin\mingw-get install msys-libasprintf-dll
rem .\bin\mingw-get install msys-libbz2-dev
rem .\bin\mingw-get install msys-libbz2-dll
rem .\bin\mingw-get install msys-libcharset-dll
rem .\bin\mingw-get install msys-libcrypt-dev
rem .\bin\mingw-get install msys-libcrypt-dll
rem .\bin\mingw-get install msys-libexpat-dev
rem .\bin\mingw-get install msys-libexpat-dll
rem .\bin\mingw-get install msys-libgdbm-dev
rem .\bin\mingw-get install msys-libgdbm-dll
rem .\bin\mingw-get install msys-libgettextpo-dll
rem .\bin\mingw-get install msys-libgmp-dev
rem .\bin\mingw-get install msys-libgmp-dll
rem .\bin\mingw-get install msys-libguile-dev
rem .\bin\mingw-get install msys-libguile-dll
rem .\bin\mingw-get install msys-libguile-rtm
rem .\bin\mingw-get install msys-libiconv-bin
rem .\bin\mingw-get install msys-libiconv-dev
rem .\bin\mingw-get install msys-libiconv-dll
rem .\bin\mingw-get install msys-libiconv-doc
rem .\bin\mingw-get install msys-libiconv-lic
rem .\bin\mingw-get install msys-libintl-dll
rem .\bin\mingw-get install msys-libltdl-dev
rem .\bin\mingw-get install msys-libltdl-dll
rem .\bin\mingw-get install msys-liblzma-dev
rem .\bin\mingw-get install msys-liblzma-dll
rem .\bin\mingw-get install msys-libmagic-dev
rem .\bin\mingw-get install msys-libmagic-dll
rem .\bin\mingw-get install msys-libminires-dev
rem .\bin\mingw-get install msys-libminires-dll
rem .\bin\mingw-get install msys-libminizip-dev
rem .\bin\mingw-get install msys-libminizip-dll
rem .\bin\mingw-get install msys-libopenssl-dev
rem .\bin\mingw-get install msys-libopenssl-dll
rem .\bin\mingw-get install msys-libopts-dev
rem .\bin\mingw-get install msys-libopts-dll
rem .\bin\mingw-get install msys-libpopt-dev
rem .\bin\mingw-get install msys-libpopt-dll
rem .\bin\mingw-get install msys-libpopt-lang
rem .\bin\mingw-get install msys-libregex-dev
rem .\bin\mingw-get install msys-libregex-dll
rem .\bin\mingw-get install msys-libtermcap-dev
rem .\bin\mingw-get install msys-libtermcap-dll
rem .\bin\mingw-get install msys-libtool-bin
rem .\bin\mingw-get install msys-libtool-doc
rem .\bin\mingw-get install msys-libtool-lic
rem .\bin\mingw-get install msys-libxml2-bin
rem .\bin\mingw-get install msys-libxml2-dev
rem .\bin\mingw-get install msys-libxml2-dll
rem .\bin\mingw-get install msys-libxml2-doc
rem .\bin\mingw-get install msys-libxml2-lic
rem .\bin\mingw-get install msys-lndir-bin
rem .\bin\mingw-get install msys-lndir-doc
rem .\bin\mingw-get install msys-lndir-lic
rem .\bin\mingw-get install msys-locate-bin
rem .\bin\mingw-get install msys-lpr-enhanced-bin
rem .\bin\mingw-get install msys-lpr-enhanced-doc
rem .\bin\mingw-get install msys-lpr-enhanced-lic
rem .\bin\mingw-get install msys-m4-bin
rem .\bin\mingw-get install msys-m4-doc
rem .\bin\mingw-get install msys-m4-lic
.\bin\mingw-get install msys-make-bin
rem .\bin\mingw-get install msys-make-doc
rem .\bin\mingw-get install msys-make-lang
rem .\bin\mingw-get install msys-make-lic
rem .\bin\mingw-get install msys-man-bin
rem .\bin\mingw-get install msys-man-doc
rem .\bin\mingw-get install msys-man-lang
rem .\bin\mingw-get install msys-man-lic
rem .\bin\mingw-get install msys-minires-bin
rem .\bin\mingw-get install msys-minires-doc
rem .\bin\mingw-get install msys-minires-lic
rem .\bin\mingw-get install msys-minizip-bin
rem .\bin\mingw-get install msys-mintty-bin
rem .\bin\mingw-get install msys-mintty-doc
rem .\bin\mingw-get install msys-mksh-bin
rem .\bin\mingw-get install msys-mksh-doc
rem .\bin\mingw-get install msys-mksh-lic
rem .\bin\mingw-get install msys-mktemp-bin
rem .\bin\mingw-get install msys-mktemp-doc
rem .\bin\mingw-get install msys-mktemp-lic
rem .\bin\mingw-get install msys-openssh-bin
rem .\bin\mingw-get install msys-openssh-doc
rem .\bin\mingw-get install msys-openssh-lic
rem .\bin\mingw-get install msys-openssl-bin
rem .\bin\mingw-get install msys-openssl-doc
rem .\bin\mingw-get install msys-openssl-lic
.\bin\mingw-get install msys-patch-bin
rem .\bin\mingw-get install msys-patch-doc
rem .\bin\mingw-get install msys-patch-lic
rem .\bin\mingw-get install msys-perl-bin
rem .\bin\mingw-get install msys-perl-doc
rem .\bin\mingw-get install msys-perl-html
rem .\bin\mingw-get install msys-perl-lic
rem .\bin\mingw-get install msys-perl-man
rem .\bin\mingw-get install msys-popt-doc
rem .\bin\mingw-get install msys-popt-lic
rem .\bin\mingw-get install msys-rebase-bin
rem .\bin\mingw-get install msys-rebase-dev
rem .\bin\mingw-get install msys-rebase-doc
rem .\bin\mingw-get install msys-rebase-lic
rem .\bin\mingw-get install msys-regex-doc
rem .\bin\mingw-get install msys-regex-lic
rem .\bin\mingw-get install msys-rsync-bin
rem .\bin\mingw-get install msys-rsync-doc
rem .\bin\mingw-get install msys-rsync-lic
.\bin\mingw-get install msys-rxvt-bin
rem .\bin\mingw-get install msys-rxvt-doc
rem .\bin\mingw-get install msys-rxvt-lic
rem .\bin\mingw-get install msys-sed-bin
rem .\bin\mingw-get install msys-sed-doc
rem .\bin\mingw-get install msys-sed-lang
rem .\bin\mingw-get install msys-sed-lic
rem .\bin\mingw-get install msys-system-builder-bin
.\bin\mingw-get install msys-tar-bin
rem rem .\bin\mingw-get install msys-tar-doc
rem .\bin\mingw-get install msys-tar-ext
rem .\bin\mingw-get install msys-tar-lang
rem .\bin\mingw-get install msys-tar-lic
rem .\bin\mingw-get install msys-termcap-bin
rem .\bin\mingw-get install msys-termcap-doc
rem .\bin\mingw-get install msys-termcap-lic
rem .\bin\mingw-get install msys-texinfo-bin
rem .\bin\mingw-get install msys-texinfo-doc
rem .\bin\mingw-get install msys-texinfo-lang
rem .\bin\mingw-get install msys-texinfo-lic
rem .\bin\mingw-get install msys-tiny-bin
.\bin\mingw-get install msys-unzip-bin
rem .\bin\mingw-get install msys-unzip-doc
rem .\bin\mingw-get install msys-unzip-lic
.\bin\mingw-get install msys-vim-bin
rem .\bin\mingw-get install msys-vim-doc
rem .\bin\mingw-get install msys-vim-lang
rem .\bin\mingw-get install msys-vim-lic
rem .\bin\mingw-get install msys-w32api-dev
.\bin\mingw-get install msys-wget-bin
rem .\bin\mingw-get install msys-wget-doc
rem .\bin\mingw-get install msys-wget-lang
rem .\bin\mingw-get install msys-wget-lic
rem .\bin\mingw-get install msys-xz-bin
rem .\bin\mingw-get install msys-xz-doc
rem .\bin\mingw-get install msys-xz-lang
rem .\bin\mingw-get install msys-xz-lic
rem .\bin\mingw-get install msys-zip-bin
rem .\bin\mingw-get install msys-zip-doc
rem .\bin\mingw-get install msys-zip-lic
rem .\bin\mingw-get install msys-zlib-dev
rem .\bin\mingw-get install msys-zlib-dll
rem .\bin\mingw-get install msys-zlib-doc
rem .\bin\mingw-get install msys-zlib-lic
exit /b
@gr883e5b
Copy link
Author

@echo off

rem mingw-get:
rem http://sourceforge.net/projects/mingw/files/Installer/mingw-get/
rem
rem cross-compile:
rem http://xhmikosr.1f0.de/
rem http://komisar.gin.by/
rem
rem strawberry perl:
rem http://strawberryperl.com/releases.html

setlocal
set PROFILE_XML=.\var\lib\mingw-get\data\profile.xml
set DOWNLOAD_DIR=./var/cache

call :GEN_PROFILE_XML
call :INSTALL_MSYS
call :INSTALL_7ZA
call :INSTALL_PERL
call :INSTALL_GIT
call :INSTALL_MISC

rem = '---Perl---
if "%OS%" == "Windows_NT" goto WinNT
.\share\perl\bin\perl -x -S "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9
goto endofperl
:WinNT
.\share\perl\bin\perl -x -S %0 %*
if NOT "%COMSPEC%" == "%SystemRoot%\system32\cmd.exe" goto endofperl
if %errorlevel% == 9009 echo You do not have Perl in your PATH.
if errorlevel 1 goto script_failed_so_exit_with_non_zero_val 2>nul
goto endofperl
@Rem ';

!/share/perl/bin/perl

line 15

use strict;
use warnings;
print "Hello World!\n";
my $profile = "./etc/profile";
my $buf = file_get_contents($profile);
my $path = '.:/share/perl/bin:/d/common/eac3to:/usr/local/bin:/mingw/x86_64-w64-mingw32/bin:/mingw/bin:/bin:$PATH';
$buf =~ s/PATH=".*?"/PATH="$path"/;
$buf =~ s/cd "$HOME"/alias ls='ls -F --color --show-control-chars -al'\n\ncd "$HOME"/;
$buf .= "\n# genetated\n";
open FH, '>' , $profile or die "file open error: $!";
print FH $buf;
close FH;

sub file_get_contents{
my $filename = $_[0];
open my $fh, '<', $filename;
my $buf = do { local $/; <$fh> };
close $fh;
return $buf;
}

END

endlocal
exit /b
rem ----------------------------------------------------------------

:INSTALL_GIT
if not exist .\bin\git.exe (
.\bin\wget http://msysgit.googlecode.com/files/PortableGit-1.7.11-preview20120710.7z -nc -P %DOWNLOAD_DIR%
.\bin\7za x %DOWNLOAD_DIR%\PortableGit-1.7.11-preview20120710.7z bin -aos -o./
.\bin\7za x %DOWNLOAD_DIR%\PortableGit-1.7.11-preview20120710.7z cmd -aos -o./
.\bin\7za x %DOWNLOAD_DIR%\PortableGit-1.7.11-preview20120710.7z lib -aos -o./
.\bin\7za x %DOWNLOAD_DIR%\PortableGit-1.7.11-preview20120710.7z libexec -aos -o./
.\bin\7za x %DOWNLOAD_DIR%\PortableGit-1.7.11-preview20120710.7z share -aos -o./
.\bin\7za x %DOWNLOAD_DIR%\PortableGit-1.7.11-preview20120710.7z ssl -aos -o./
)
.\bin\git --version
exit /b

:INSTALL_MISC
if not exist .\bin\nasm.exe (
.\bin\wget http://www.nasm.us/pub/nasm/releasebuilds/2.09.10/win32/nasm-2.09.10-win32.zip -nc -P %DOWNLOAD_DIR%
.\bin\7za e %DOWNLOAD_DIR%\nasm-2.09.10-win32.zip nasm-2.09.10/nasm.exe -aos -o./bin
)
if not exist .\bin\yasm.exe (
.\bin\wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0-win32.exe -nc -P .\bin
rename .\bin\yasm-1.2.0-win32.exe yasm.exe
)
.\bin\nasm -v
.\bin\yasm --version
exit /b

:INSTALL_PERL
.\bin\wget http://strawberryperl.com/download/5.16.1.1/strawberry-perl-5.16.1.1-64bit-portable.zip -nc -P %DOWNLOAD_DIR%
.\bin\7za x %DOWNLOAD_DIR%\strawberry-perl-5.16.1.1-64bit-portable.zip perl -aos -o./share
if not exist .\mingw\bin\gcc.exe (
.\bin\7za x %DOWNLOAD_DIR%\strawberry-perl-5.16.1.1-64bit-portable.zip c -aos -o./
copy .\c\bin\ar.exe .\c\bin\x86_64-w64-mingw32-ar.exe
copy .\c\bin\ranlib.exe .\c\bin\x86_64-w64-mingw32-ranlib.exe
)
rename c mingw
.\share\perl\bin\perl -v
exit /b

:INSTALL_7ZA
if not exist .\bin\7za.exe (
.\bin\wget http://sourceforge.net/projects/sevenzip/files/7-Zip/9.20/7za920.zip -nc -P %DOWNLOAD_DIR%
.\bin\unzip -n %DOWNLOAD_DIR%/7za920.zip 7za.exe -d ./bin
)
.\bin\7za -h
exit /b

:INSTALL_MSYS
rem .\bin\mingw-get update
.\bin\mingw-get install msys-base-bin
.\bin\mingw-get install msys-wget-bin
.\bin\mingw-get install msys-patch-bin
.\bin\mingw-get install msys-unzip-bin
.\bin\mingw-get install msys-libbz2-dll
exit /b

:GEN_PROFILE_XML
(
echo ^<?xml version="1.0" encoding="UTF-8" standalone="yes"?^>
echo ^<profile project="MinGW" application="mingw-get"^>
echo ^<repository uri="http://prdownloads.sourceforge.net/mingw/%%F.xml.lzma?download"^>
echo ^</repository^>
echo ^<system-map id="default"^>
echo ^<sysroot subsystem="mingw32" path="%%R" /^>
echo ^<!--sysroot subsystem="MSYS" path="%%R/msys/1.0" /--^>
echo ^<sysroot subsystem="MSYS" path="%%R" /^>
echo ^</system-map^>
echo ^</profile^>
echo ^<!-- $RCSfile: profile.xml,v $: end of file --^>
) >> %PROFILE_XML%
exit /b

:endofperl

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment