win: remove outdated msys2 scripts

They were very outdated and if we'll need msys2 support, we'll be able to introduce it later in our Python scripts.
This commit is contained in:
Andrej730
2026-09-07 10:57:39 +05:00
parent 7cfb146717
commit 20d56efdfc
8 changed files with 4 additions and 239 deletions
-86
View File
@@ -1,86 +0,0 @@
###############################################################################
# #
# This file is part of IfcOpenShell. #
# #
# IfcOpenShell is free software: you can redistribute it and/or modify #
# it under the terms of the Lesser GNU General Public License as published by #
# the Free Software Foundation, either version 3.0 of the License, or #
# (at your option) any later version. #
# #
# IfcOpenShell is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# Lesser GNU General Public License for more details. #
# #
# You should have received a copy of the Lesser GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
###############################################################################
# #
# This script installs and builds IfcOpenShell's dependencies using MSYS2 #
# #
# Note that this script is currently a very bare-bones implementation #
# #
###############################################################################
set -e
# Set defaults for missing empty environment variables
if [ -z "$IFCOS_NUM_BUILD_PROCS" ]; then
IFCOS_NUM_BUILD_PROCS=$(expr $(sysctl -n hw.ncpu 2> /dev/null || cat /proc/cpuinfo | grep processor | wc -l) + 1)
fi
BUILD_DIR=build-msys
SCRIPT_DIR=`pwd "$0"`
DEPS_DIR="$SCRIPT_DIR/../deps"
[ -d $DEPS_DIR ] || mkdir -p $DEPS_DIR
INSTALL_DIR="$SCRIPT_DIR/../deps-msys-installed"
pacman --noconfirm -S mingw-w64-x86_64-toolchain mingw-w64-x86_64-boost make swig
export PATH=/mingw64/bin/:$PATH
function git_clone_or_pull {
[ -d $2 ] || git clone $1 $2
pushd $2
git pull
popd
}
function git_clone_and_checkout_revision {
[ -d $2 ] || git clone $1 $2
pushd $2
git checkout $3
popd
}
# Use a fixed revision in order to prevent introducing breaking changes
git_clone_and_checkout_revision https://github.com/KhronosGroup/OpenCOLLADA.git "$DEPS_DIR/OpenCOLLADA" \
064a60b65c2c31b94f013820856bc84fb1937cc6
pushd "$DEPS_DIR/OpenCOLLADA"
[ -d $BUILD_DIR ] || mkdir -p $BUILD_DIR
pushd $BUILD_DIR
cmake .. -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX="$INSTALL_DIR/OpenCOLLADA"
make -j$IFCOS_NUM_BUILD_PROCS
make install
popd
git_clone_or_pull https://github.com/tpaviot/oce.git "$DEPS_DIR/oce"
git_clone_or_pull https://github.com/QbProg/oce-win-bundle.git "$DEPS_DIR/oce/oce-win-bundle"
pushd "$DEPS_DIR/oce"
[ -d $BUILD_DIR ] || mkdir -p $BUILD_DIR
pushd $BUILD_DIR
# -DOCE_BUILD_SHARED_LIB=0
cmake .. -G "MSYS Makefiles" -DOCE_INSTALL_PREFIX="$INSTALL_DIR/oce" -DOCE_TESTING=0
make -j$IFCOS_NUM_BUILD_PROCS
make install
popd
popd
echo IfcOpenShell dependencies installed and built
-30
View File
@@ -1,30 +0,0 @@
###############################################################################
# #
# This file is part of IfcOpenShell. #
# #
# IfcOpenShell is free software: you can redistribute it and/or modify #
# it under the terms of the Lesser GNU General Public License as published by #
# the Free Software Foundation, either version 3.0 of the License, or #
# (at your option) any later version. #
# #
# IfcOpenShell is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# Lesser GNU General Public License for more details. #
# #
# You should have received a copy of the Lesser GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
set -e
export PATH=/mingw64/bin/:$PATH
if [ -z "$IFCOS_NUM_BUILD_PROCS" ]; then
IFCOS_NUM_BUILD_PROCS=$(expr $(sysctl -n hw.ncpu 2> /dev/null || cat /proc/cpuinfo | grep processor | wc -l) + 1)
fi
pushd ../build-msys
/mingw64/bin/mingw32-make.exe -j$IFCOS_NUM_BUILD_PROCS
popd
-30
View File
@@ -1,30 +0,0 @@
###############################################################################
# #
# This file is part of IfcOpenShell. #
# #
# IfcOpenShell is free software: you can redistribute it and/or modify #
# it under the terms of the Lesser GNU General Public License as published by #
# the Free Software Foundation, either version 3.0 of the License, or #
# (at your option) any later version. #
# #
# IfcOpenShell is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# Lesser GNU General Public License for more details. #
# #
# You should have received a copy of the Lesser GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
set -e
export PATH=/mingw64/bin/:$PATH
if [ -z "$IFCOS_NUM_BUILD_PROCS" ]; then
IFCOS_NUM_BUILD_PROCS=$(expr $(sysctl -n hw.ncpu 2> /dev/null || cat /proc/cpuinfo | grep processor | wc -l) + 1)
fi
pushd ../build-msys
make install -j$IFCOS_NUM_BUILD_PROCS
popd
+4 -19
View File
@@ -5,19 +5,10 @@ and its dependencies.
As a general guideline, `.cmd` files are non-standalone batch files that need to be run from command prompt or from
another batch file, and/or while the Visual Studio ("MSVC") environment variables set, and `.bat` files are standalone batch
files that can also be invoked e.g. by double-clicking in the File Explorer. `.sh` files are for MSYS**2** + MinGW ("MSYS"
) compilation.
files that can also be invoked e.g. by double-clicking in the File Explorer.
Usage Instructions
------------------
### MSYS
Building using MSYS is very similar to using the MSVC batch files, but instead the shell scripts
are used. Note that the MSYS support is currently a bit experimental. It is advised to check out the contents
of the shell scripts before using them. Note that contrary to MSVC, with MSYS all of the dependencies are not
built or used as static libraries. Currently Release build is used for all libraries.
### MSVC
Launch the proper Visual Studio command prompt, cd to the 'win' directory inside the IfcOpenShell directory and execute `build-deps.cmd` to fetch, build and install the dependencies. The batch file will print the requirements for a successful execution. The script allows a few user-configurable build options which are listed below.
`build-deps.cmd` expects a CMake generator as `%1` and a build configuration type (`RelWithDebInfo`, `Release`, `MinSizeRel`, or `Debug`, defaults to `RelWithDebInfo`) as `%2`. If the generator is not provided, the generator is deduced from the MSVC environment variables.
@@ -71,8 +62,6 @@ Before building the dependencies, enable the OCCT usage:
> build-deps.cmd
```
Please note that this option is not yet available in the MSYS build scripts.
Using an already existing Python installation
---------------------------------------------
@@ -97,23 +86,19 @@ Directory Structure
------------------
```
..
+---build-* - Created by run-cmake.bat/sh, specific for a certain compiler and and target architecture
+---deps - Created by build-deps.cmd/sh, common for all compilers
+---deps-*-installed - Created by build-deps.cmd/sh, specific for a certain compiler and target architecture
+---build-* - Created by run-cmake.bat, specific for a certain compiler and and target architecture
+---deps - Created by build-deps.cmd, common for all compilers
+---deps-*-installed - Created by build-deps.cmd, specific for a certain compiler and target architecture
+---installed-* - Created by installing the IFCOS project, specific for a certain compiler and target architecture
\---win
| build-all.cmd - Runs all of the build scripts for IFCOS and it dependencies in a row without pauses
| build-deps.cmd - Fetches and builds all needed dependencies for IFCOS using MSVC
| build-deps.sh - Fetches and builds all needed dependencies for IFCOS using MSYS
| BuildDepsCache-<ARCH>.txt - Cache file created by build-deps.cmd
| build-ifcopenshell.bat - Builds IFCOS using MSVC
| build-ifcopenshell.sh - Builds IFCOS using MSYS
| build-type-cfg.cmd - Utility file used by the build scripts
| install-ifcopenshell.bat - Installs/deploys IFCOS using MSVC.
| install-ifcopenshell.sh - Installs/deploys IFCOS using MSYS.
| readme.md - This file
| run-cmake.bat - Sets environment variables for the dependencies and runs CMake for IFCOS using MSVC
| run-cmake.sh - Sets environment variables for the dependencies and runs CMake for IFCOS using MSYS
| set-python-to-path.bat - Utility for setting PYTHONHOME (read from BuildDepsCache-<ARCH>.txt) to PATH
| vs-cfg.cmd - Utility file used by the build scripts
\---patches - Contains patches for the dependencies
-40
View File
@@ -1,40 +0,0 @@
###############################################################################
# #
# This file is part of IfcOpenShell. #
# #
# IfcOpenShell is free software: you can redistribute it and/or modify #
# it under the terms of the Lesser GNU General Public License as published by #
# the Free Software Foundation, either version 3.0 of the License, or #
# (at your option) any later version. #
# #
# IfcOpenShell is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# Lesser GNU General Public License for more details. #
# #
# You should have received a copy of the Lesser GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
set -e
export PATH=/mingw64/bin/:$PATH
BUILD_DIR=../build-msys
[ -d $BUILD_DIR ] || mkdir -p $BUILD_DIR
CMAKE_INSTALL_PREFIX=../installed-msys
pushd $BUILD_DIR
# PYTHON_INCLUDE_DIR=/mingw64/include/python2.7 \
# PYTHON_LIBRARY=/mingw64/lib/python2.7/config/libpython2.7.a \
OCC_INCLUDE_DIR=`pwd`/../deps-msys-installed/oce/include/oce/ \
OCC_LIBRARY_DIR=`pwd`/../deps-msys-installed/oce/Win64/lib/ \
OPENCOLLADA_INCLUDE_DIR=`pwd`/../deps-msys-installed/OpenCOLLADA/include/opencollada/ \
OPENCOLLADA_LIBRARY_DIR=`pwd`/../deps-msys-installed/OpenCOLLADA/lib/opencollada/ \
cmake -G "MSYS Makefiles" ../cmake -DSWIG_DIR=/usr/bin -DCMAKE_INSTALL_PREFIX=$CMAKE_INSTALL_PREFIX \
-DCMAKE_MAKE_PROGRAM=/mingw64/bin/mingw32-make.exe $@
popd