mirror of
https://github.com/Egor00f/kolibrios-gcc-toolchain.git
synced 2025-09-20 18:00:07 +02:00
1
.gitignore
vendored
1
.gitignore
vendored
@@ -6,4 +6,5 @@ build/
|
||||
chocolatey/kos32-gcc*.nupkg
|
||||
chocolatey/install.ps1
|
||||
chocolatey/tools/install.ps1
|
||||
bat/builds.kolibrios.org
|
||||
*.7z
|
||||
|
@@ -1,4 +1,4 @@
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 3.10)
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12)
|
||||
|
||||
project(
|
||||
KolibriOS-gcc-Toolchain-installer
|
||||
|
3
CONTRIBUTING.md
Normal file
3
CONTRIBUTING.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# Как законтрибьютить?
|
||||
|
||||
просто форкаешь репозиторий, делаешь нужные изменения, делаешь запрос на слияние, ждёшь принятия запроса
|
@@ -29,7 +29,11 @@
|
||||
|
||||
wget для windows можно поискать в GnuWin32 например, 7z Нужно добавить в PATH.
|
||||
|
||||
Тулчейн по умолчанию устанавливается в папку `C:/MinGW/msys/1.0/home/autobuild/tools/win32`, но вы можете изменить путь добавив аргумент - путь установки(пустой - путь по умолчанию).
|
||||
Тулчейн по умолчанию устанавливается в папку `C:/MinGW/msys/1.0/home/autobuild/tools/win32`, но вы можете изменить путь добавив аргумент - путь установки(пустой - путь по умолчанию). Например:
|
||||
|
||||
```
|
||||
install.bat Path
|
||||
```
|
||||
|
||||
## Сборка установщиков
|
||||
|
||||
|
4
bat/cleanArchives.bat
Normal file
4
bat/cleanArchives.bat
Normal file
@@ -0,0 +1,4 @@
|
||||
set TOOLCHAIN_DIR=%1
|
||||
|
||||
del /Q %TOOLCHAIN_DIR%\kos32-toolchain.7z
|
||||
del /Q %TOOLCHAIN_DIR%\win32\mingw32\sdk-28-10-16.7z
|
6
bat/downloadLibraries.bat
Normal file
6
bat/downloadLibraries.bat
Normal file
@@ -0,0 +1,6 @@
|
||||
set TOOLCHAIN_DIR=%1
|
||||
|
||||
|
||||
wget http://ftp.kolibrios.org/users/Serge/new/Toolchain/sdk-28-10-16.7z -O %TOOLCHAIN_DIR%\win32\mingw32\sdk-28-10-16.7z
|
||||
|
||||
7z x -y %TOOLCHAIN_DIR%\win32\mingw32\sdk-28-10-16.7z -o%TOOLCHAIN_DIR%\win32\mingw32
|
5
bat/downloadToolchain.bat
Normal file
5
bat/downloadToolchain.bat
Normal file
@@ -0,0 +1,5 @@
|
||||
set TOOLCHAIN_DIR=%1
|
||||
|
||||
wget http://ftp.kolibrios.org/users/Serge/new/Toolchain/msys-kos32-5.4.0.7z -O %TOOLCHAIN_DIR%\kos32-toolchain.7z
|
||||
|
||||
7z x -y %TOOLCHAIN_DIR%\kos32-toolchain.7z -o%TOOLCHAIN_DIR%
|
5
bat/updateLibraries.bat
Normal file
5
bat/updateLibraries.bat
Normal file
@@ -0,0 +1,5 @@
|
||||
set TOOLCHAIN_DIR=%1
|
||||
|
||||
wget -r --no-parent http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/
|
||||
move /y builds.kolibrios.org\en_US\data\contrib\sdk\lib\* %TOOLCHAIN_DIR%\win32\mingw32\lib
|
||||
rd /s /q builds.kolibrios.org
|
28
install.bat
28
install.bat
@@ -1,4 +1,4 @@
|
||||
@echo off
|
||||
rem@echo off
|
||||
|
||||
for /f %%a in ('echo prompt $E^| cmd') do set "ESC=%%a"
|
||||
|
||||
@@ -12,6 +12,7 @@ else (
|
||||
set TOOLCHAIN_DIR=%1
|
||||
)
|
||||
|
||||
echo %TOOLCHAIN_DIR%
|
||||
|
||||
Call :print_msg Create the %TOOLCHAIN_DIR% folder...
|
||||
|
||||
@@ -20,14 +21,11 @@ mkdir %TOOLCHAIN_DIR%
|
||||
Call :print_ok Successfully!
|
||||
|
||||
|
||||
cd bat
|
||||
|
||||
call :print_msg Download the kos32-gcc toolchain...
|
||||
|
||||
cd %TOOLCHAIN_DIR%
|
||||
|
||||
wget http://ftp.kolibrios.org/users/Serge/new/Toolchain/msys-kos32-5.4.0.7z -O %TOOLCHAIN_DIR%\kos32-toolchain.7z
|
||||
|
||||
7z x -y %TOOLCHAIN_DIR%\kos32-toolchain.7z -o%TOOLCHAIN_DIR%
|
||||
downloadToolchain %TOOLCHAIN_DIR%
|
||||
|
||||
Call :print_ok Successfully!
|
||||
|
||||
@@ -35,11 +33,7 @@ Call :print_ok Successfully!
|
||||
|
||||
Call :print_msg Downloading libraries...
|
||||
|
||||
cd %TOOLCHAIN_DIR%\win32\mingw32
|
||||
|
||||
wget http://ftp.kolibrios.org/users/Serge/new/Toolchain/sdk-28-10-16.7z -O %TOOLCHAIN_DIR%\win32\mingw32\sdk-28-10-16.7z
|
||||
|
||||
7z x -y %TOOLCHAIN_DIR%\win32\mingw32\sdk-28-10-16.7z
|
||||
downloadLibraries.bat %TOOLCHAIN_DIR%
|
||||
|
||||
Call :print_ok Successfully!
|
||||
|
||||
@@ -47,17 +41,7 @@ Call :print_ok Successfully!
|
||||
|
||||
Call :print_msg Updating libraries
|
||||
|
||||
cd %TOOLCHAIN_DIR%\win32\mingw32\lib
|
||||
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libdll.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libdll.a
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libfreetype.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libfreetype.a
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libc.dll.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libc.dll.a
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libSDLn.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libSDLn.a
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libcurses.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libcurses.a
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libz.dll.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libz.dll.a
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libogg.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libogg.a
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libvorbis.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libvorbis.a
|
||||
wget http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/libopenjpeg.a -O %TOOLCHAIN_DIR%\win32\mingw32\lib\libopenjpeg.a
|
||||
updateLibraries %TOOLCHAIN_DIR%
|
||||
|
||||
Call :print_ok Successfully!
|
||||
|
||||
|
31
install.sh
31
install.sh
@@ -5,6 +5,11 @@
|
||||
# modified by Egor00f (Egor)
|
||||
|
||||
set -e
|
||||
pwd
|
||||
|
||||
DEFAULT_TOOLCHAIN_DIR="/home/autobuild/tools"
|
||||
|
||||
TOOLCHAIN_DIR=$DEFAULT_TOOLCHAIN_DIR
|
||||
|
||||
print_msg(){
|
||||
echo -e "\e[34m$1\e[0m"
|
||||
@@ -29,22 +34,14 @@ check_utils(){
|
||||
fi
|
||||
}
|
||||
|
||||
pwd
|
||||
|
||||
DEFAULT_TOOLCHAIN_DIR="/home/autobuild/tools"
|
||||
|
||||
TOOLCHAIN_DIR=$DEFAULT_TOOLCHAIN_DIR
|
||||
|
||||
MESSAGE="Toolchain install path(default is $TOOLCHAIN_DIR): "
|
||||
|
||||
echo -n $MESSAGE
|
||||
echo -n -e "\e[0mToolchain install path \e[90m(default is $TOOLCHAIN_DIR)\e[97m: "
|
||||
read INPUT
|
||||
|
||||
if [[ ! -z "$INPUT" ]]; then
|
||||
TOOLCHAIN_DIR=$INPUT
|
||||
fi
|
||||
|
||||
echo "Installing toolchain to $TOOLCHAIN_DIR"
|
||||
echo -e "\e[0mInstalling toolchain to \e[97m$TOOLCHAIN_DIR\e[0m"
|
||||
|
||||
|
||||
print_msg "Checking utilities..."
|
||||
@@ -84,7 +81,7 @@ print_msg "Downloading libraries..."
|
||||
|
||||
cd $TOOLCHAIN_DIR/win32/mingw32
|
||||
sudo wget http://ftp.kolibrios.org/users/Serge/new/Toolchain/sdk-28-10-16.7z -q -O sdk-28-10-16.7z
|
||||
sudo 7z x -y sdk-28-10-16.7z
|
||||
sudo 7z x -y -bso0 -bsp0 sdk-28-10-16.7z
|
||||
sudo rm -rf sdk-28-10-16.7z
|
||||
|
||||
print_ok "Successfully!"
|
||||
@@ -94,7 +91,7 @@ print_ok "Successfully!"
|
||||
print_msg "Updating libraries"
|
||||
|
||||
cd lib
|
||||
sudo wget -r --no-parent -q http://builds.kolibrios.org/en_US/data/contrib/sdk/lib
|
||||
sudo wget -r --no-parent -q http://builds.kolibrios.org/en_US/data/contrib/sdk/lib/
|
||||
sudo mv builds.kolibrios.org/en_US/data/contrib/sdk/lib/* ./
|
||||
sudo rm -R builds.kolibrios.org
|
||||
|
||||
@@ -105,9 +102,10 @@ print_ok "Successfully!"
|
||||
if ["$1" == "online"]; then
|
||||
print_msg "Downloading libisl..."
|
||||
|
||||
cd /tmp
|
||||
sudo wget http://board.kolibrios.org/download/file.php?id=8301libisl.so.10.2.2.7z -q -O /tmp/libisl.so.10.2.2.7z
|
||||
sudo 7z x -y libisl.so.10.2.2.7z
|
||||
cd /tmp
|
||||
sudo wget http://board.kolibrios.org/download/file.php?id=8301libisl.so.10.2.2.7z -q -O /tmp/libisl.so.10.2.2.7z
|
||||
sudo 7z x -y -bso0 -bsp0 libisl.so.10.2.2.7z
|
||||
|
||||
|
||||
if ! [ -d /usr/lib/x86_64-linux-gnu/ ]; then
|
||||
sudo mkdir -p /usr/lib/x86_64-linux-gnu/
|
||||
@@ -156,8 +154,9 @@ fi
|
||||
|
||||
sudo chmod 775 $TOOLCHAIN_DIR/win32/bin/*
|
||||
sudo chmod 774 $TOOLCHAIN_DIR/win32/include/*
|
||||
sudo chmod -R 775 /home/autobuild/tools/win32/lib/gcc
|
||||
sudo chmod 774 $TOOLCHAIN_DIR/win32/lib/*
|
||||
sudo chmod 774 $TOOLCHAIN_DIR/win32/mingw32/lib/*
|
||||
sudo chmod -R 775 /home/autobuild/tools/win32/lib/gcc
|
||||
|
||||
cd "$OLDPWD"
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
|
||||
|
||||
#define MyAppName "KolibriOS gcc toolchain"
|
||||
#define MyAppVersion "0.1.6"
|
||||
#define MyAppVersion "0.1.5"
|
||||
#define MyAppPublisher "Egor00f"
|
||||
#define MyAppURL "https://github.com/Egor00f/kolibrios-gcc-toolchain"
|
||||
|
||||
@@ -65,17 +65,25 @@ Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environmen
|
||||
Check: NeedsAddPath('{app}\win32\bin')
|
||||
|
||||
[Files]
|
||||
Source: ".\build\libs"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
||||
Source: ".\build\win32"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
||||
Source: ".\bat\downloadToolchain.bat"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
||||
Source: ".\bat\downloadLibraries.bat"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
||||
Source: ".\bat\updateLibraries.bat"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
||||
|
||||
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
|
||||
|
||||
[Run]
|
||||
Filename: "{app}\downloadToolchain.bat"; description: "install toolchain script"; StatusMsg: "Installing toolchain"; Parameters: "{app}"; Flags: runhidden logoutput
|
||||
Filename: "{app}\downloadLibraries.bat"; description: "download libraries script"; StatusMsg: "Download libraries"; Parameters: "{app}"; Flags: runhidden logoutput
|
||||
Filename: "{app}\updateLibraries.bat"; description: "update libraries script"; StatusMsg: "Updating libraries"; Parameters: "{app}"; Flags: runhidden logoutput
|
||||
Filename: "{app}\cleanArchives.bat"; description: "Delete downloaded archives script"; StatusMsg: "Delete downloaded archives"; Parameters: "{app}"; Flags: runhidden logoutput
|
||||
|
||||
[Icons]
|
||||
Name: "{group}\{cm:ProgramOnTheWeb,{#MyAppName}}"; Filename: "{#MyAppURL}"
|
||||
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"
|
||||
|
||||
[UninstallDelete]
|
||||
Type: files; Name: "{app}\*"
|
||||
Type: files; Name: "{app}"
|
||||
Type: filesandordirs; Name: "{app}\win32"
|
||||
|
||||
[Code]
|
||||
function NeedsAddPath(Param: string): boolean;
|
||||
|
@@ -1,6 +1,6 @@
|
||||
Package: kos32-gcc
|
||||
Version: 0.1.6
|
||||
Architecture: all
|
||||
Version: 0.1.7
|
||||
Architecture: amd64
|
||||
Section: devel
|
||||
Depends: libc6-i386:amd64, libmpc3:amd64
|
||||
Pre-Depends: p7zip-full, wget
|
||||
|
@@ -2,11 +2,11 @@
|
||||
|
||||
TOOLCHAIN_DIR=$(head -n 1 /etc/kos32-gcc/install-path)
|
||||
|
||||
|
||||
|
||||
MESSAGE="PATH=\$PATH:$TOOLCHAIN_DIR/win32/bin"
|
||||
|
||||
if grep -q '$MESSAGE' /etc/profile; then
|
||||
sudo sed -i '/$MESSAGE/d' /etc/profile
|
||||
fi
|
||||
sudo sed -i '/$MESSAGE/d' /etc/profile
|
||||
|
||||
rm /etc/kos32-gcc -R
|
||||
|
||||
|
Reference in New Issue
Block a user