freecad: 0.21.2 → 1.0rc2 (#343592)

This commit is contained in:
kirillrdy 2024-09-30 15:58:04 +10:00 committed by GitHub
commit 5140208775
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 49 additions and 35 deletions

View File

@ -1,7 +1,8 @@
From c4f452ef6ae083ed21095313582f6d1bd775cbf3 Mon Sep 17 00:00:00 2001
From: Andreas Rammhold <andreas@rammhold.de>
Date: Thu, 2 Nov 2023 17:32:07 +0100
Subject: [PATCH] NIXOS: don't ignore PYTHONPATH
commit c534a831c2f7186ebabe4e17f1e1df6d11ebff89
Author: Samuel Rounce <me@samuelrounce.co.uk>
Date: Thu Sep 5 22:17:21 2024 +0100
[PATCH] NIXOS: don't ignore PYTHONPATH
On NixOS or rather within nixpkgs we provide the runtime Python
packages via the PYTHONPATH environment variable. FreeCAD tries its
@ -16,29 +17,27 @@ shouldn't accept this patch (as is). What they might accept (once
support for older Python versions has been dropped) is removing the
PYTHONPATH specific putenv calls.
---
src/Base/Interpreter.cpp | 2 +-
src/Base/Interpreter.cpp | 1 +
src/Main/MainGui.cpp | 3 ---
2 files changed, 1 insertion(+), 4 deletions(-)
2 files changed, 1 insertion(+), 3 deletions(-)
diff --git a/src/Base/Interpreter.cpp b/src/Base/Interpreter.cpp
index 52c47168af..9966bd0013 100644
index 2bdc54ccff..ee4f7fc070 100644
--- a/src/Base/Interpreter.cpp
+++ b/src/Base/Interpreter.cpp
@@ -554,7 +554,9 @@ void initInterpreter(int argc,char *argv[])
{
PyStatus status;
@@ -593,6 +593,7 @@ void initInterpreter(int argc, char* argv[])
PyConfig config;
PyConfig_InitIsolatedConfig(&config);
+ config.isolated = 0;
config.isolated = 0;
+ config.use_environment = 1;
config.user_site_directory = 1;
status = PyConfig_SetBytesArgv(&config, argc, argv);
if (PyStatus_Exception(status)) {
diff --git a/src/Main/MainGui.cpp b/src/Main/MainGui.cpp
index 48ae847ef4..28813df383 100644
index 36087cffd6..89d49d2cc6 100644
--- a/src/Main/MainGui.cpp
+++ b/src/Main/MainGui.cpp
@@ -112,17 +112,14 @@ int main( int argc, char ** argv )
@@ -114,10 +114,8 @@ int main(int argc, char** argv)
// See https://forum.freecad.org/viewtopic.php?f=18&t=20600
// See Gui::Application::runApplication()
putenv("LC_NUMERIC=C");
@ -49,13 +48,11 @@ index 48ae847ef4..28813df383 100644
#elif defined(__MINGW32__)
const char* mingw_prefix = getenv("MINGW_PREFIX");
const char* py_home = getenv("PYTHONHOME");
if (!py_home && mingw_prefix)
@@ -125,7 +123,6 @@ int main(int argc, char** argv)
_putenv_s("PYTHONHOME", mingw_prefix);
}
#else
- _putenv("PYTHONPATH=");
// https://forum.freecad.org/viewtopic.php?f=4&t=18288
// https://forum.freecad.org/viewtopic.php?f=3&t=20515
const char* fc_py_home = getenv("FC_PYTHONHOME");
--
2.42.0

View File

@ -0,0 +1,7 @@
--- a/src/3rdParty/OndselSolver/OndselSolver.pc.in
+++ b/src/3rdParty/OndselSolver/OndselSolver.pc.in
@@ -3,2 +3,2 @@
-libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
-includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
+libdir=@CMAKE_INSTALL_LIBDIR@
+includedir=@CMAKE_INSTALL_INCLUDEDIR@

View File

@ -9,12 +9,12 @@
, gfortran
, gts
, hdf5
, libGLU
, libXmu
, libf2c
, libGLU
, libredwg
, libsForQt5
, libspnav
, libXmu
, medfile
, mpi
, ninja
@ -29,6 +29,7 @@
, vtk
, wrapGAppsHook3
, xercesc
, yaml-cpp
, zlib
, withWayland ? false
}:
@ -50,6 +51,7 @@ let
matplotlib
pivy
ply
pybind11
pycollada
pyside2
pyside2-tools
@ -61,13 +63,14 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "freecad";
version = "0.21.2";
version = "1.0rc2";
src = fetchFromGitHub {
owner = "FreeCAD";
repo = "FreeCAD";
rev = finalAttrs.version;
hash = "sha256-OX4s9rbGsAhH7tLJkUJYyq2A2vCdkq/73iqYo9adogs=";
hash = "sha256-kPmfx/C1fCYwBqh6ZOKZAVNVR9m3VryPmBKu3ksDD5E=";
fetchSubmodules = true;
};
nativeBuildInputs = [
@ -100,6 +103,7 @@ stdenv.mkDerivation (finalAttrs: {
opencascade-occt
pivy
ply # for openSCAD file support
pybind11
pycollada
pyside2
pyside2-tools
@ -116,6 +120,7 @@ stdenv.mkDerivation (finalAttrs: {
swig
vtk
xercesc
yaml-cpp
zlib
]
++ lib.optionals spaceNavSupport [
@ -125,12 +130,17 @@ stdenv.mkDerivation (finalAttrs: {
patches = [
./0001-NIXOS-don-t-ignore-PYTHONPATH.patch
./0002-FreeCad-OndselSolver-pkgconfig.patch
];
cmakeFlags = [
"-Wno-dev" # turns off warnings which otherwise makes it hard to see what is going on
"-DBUILD_FLAT_MESH:BOOL=ON"
"-DBUILD_QT5=ON"
"-DBUILD_DRAWING=ON"
"-DBUILD_FLAT_MESH:BOOL=ON"
"-DINSTALL_TO_SITEPACKAGES=OFF"
"-DFREECAD_USE_PYBIND11=ON"
"-DSHIBOKEN_INCLUDE_DIR=${shiboken2}/include"
"-DSHIBOKEN_LIBRARY=Shiboken2::libshiboken"
(
@ -201,7 +211,7 @@ stdenv.mkDerivation (finalAttrs: {
right at home with FreeCAD.
'';
license = lib.licenses.lgpl2Plus;
maintainers = with lib.maintainers; [ gebner AndersonTorres ];
maintainers = with lib.maintainers; [ gebner AndersonTorres srounce ];
platforms = lib.platforms.linux;
};
})