6 Commits

Author SHA1 Message Date
79af1f9411 fix windows installer 2025-01-08 15:54:39 +05:00
Егор
3fe69b35df fix downloading all sdk dir from kolibrios build && toolchain for x86_64 -> deb package for amd64 only && update install.bat && add more colors to install.sh 2025-01-08 09:17:21 +00:00
Егор
9f5b23a586 hide 7z output in deb package 2024-12-28 13:53:35 +00:00
adf0f3a62a fix Permisiion deined for lds scripts 2024-12-28 17:46:12 +05:00
Егор
3812696d61 Create CONTRIBUTING.md 2024-12-07 00:26:48 +05:00
Егор
4a24012df0 Update install.sh
fix error access to includes files in github codespace
2024-11-23 18:49:53 +05:00
13 changed files with 65 additions and 48 deletions

1
.gitignore vendored
View File

@@ -6,3 +6,4 @@ build/
chocolatey/kos32-gcc*.nupkg
chocolatey/install.ps1
chocolatey/tools/install.ps1
bat/builds.kolibrios.org

View File

@@ -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
View File

@@ -0,0 +1,3 @@
# Как законтрибьютить?
просто форкаешь репозиторий, делаешь нужные изменения, делаешь запрос на слияние, ждёшь принятия запроса

View File

@@ -26,7 +26,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
View 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

View 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

View 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
View 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

View File

@@ -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!

View File

@@ -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[0m Toolchain 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..."
@@ -76,7 +73,7 @@ print_ok "Successfully!"
print_msg "Extracting files ..."
cd $TOOLCHAIN_DIR
sudo 7z x -y kos32-toolchain.7z
sudo 7z x -y -bso0 -bsp0 kos32-toolchain.7z
sudo rm -rf kos32-toolchain.7z
print_ok "Successfully!"
@@ -87,7 +84,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!"
@@ -97,7 +94,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
@@ -109,7 +106,7 @@ 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
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 +153,9 @@ fi
sudo chmod 775 $TOOLCHAIN_DIR/win32/bin/*
sudo chmod 774 $TOOLCHAIN_DIR/win32/include/*
sudo chmod -R 774 $TOOLCHAIN_DIR/win32/lib/gcc/mingw32/5.4.0/include
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"

View File

@@ -65,18 +65,25 @@ Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environmen
Check: NeedsAddPath('{app}\win32\bin')
[Files]
Source: ".\install.ps1"; 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}\install.ps1"; description: "install script"; StatusMsg: "Installing toolchain"; Parameters: "-InstallPath {app}"; Flags: runhidden logoutput
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;
@@ -93,4 +100,4 @@ begin
{ look for the path with leading and trailing semicolon }
{ Pos() returns 0 if not found }
Result := Pos(';' + Param + ';', ';' + OrigPath + ';') = 0;
end;
end;

View File

@@ -1,6 +1,6 @@
Package: kos32-gcc
Version: 0.1.5
Architecture: all
Version: 0.1.7
Architecture: amd64
Section: devel
Depends: libc6-i386:amd64, libmpc3:amd64
Pre-Depends: p7zip-full, wget

View File

@@ -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