Lukas Matena 1 год назад
Родитель
Сommit
a42223f963
10 измененных файлов с 2 добавлено и 558 удалено
  1. 0 1
      .gitignore
  2. 0 132
      Build.PL
  3. 0 13
      CMakeLists.txt
  4. 0 103
      PrusaSlicer.sublime-project
  5. 1 4
      README.md
  6. 0 109
      cmake/modules/FindAlienWx.cmake
  7. 0 88
      cmake/modules/FindPerlEmbed.cmake
  8. 1 1
      deps/+OpenVDB/OpenVDB.cmake
  9. 0 61
      lib/Slic3r.pm
  10. 0 46
      lib/Slic3r/Config.pm

+ 0 - 1
.gitignore

@@ -12,7 +12,6 @@ xs/MANIFEST.bak
 xs/assertlib*
 .init_bundle.ini
 .vs/*
-local-lib
 /src/TAGS
 /.vscode/
 build-linux/*

+ 0 - 132
Build.PL

@@ -1,132 +0,0 @@
-#!/usr/bin/perl
-
-print "This script is currently used for installing Perl dependenices for running\n";
-print "the libslic3r unit / integration tests through Perl prove.\n";
-print "If you don't plan to run the unit / integration tests, you don't need to\n";
-print "install these dependencies to build and run PrusaSlicer.\n";
-
-use strict;
-use warnings;
-
-use Config;
-use File::Spec;
-
-my %prereqs = qw(
-    Devel::CheckLib                 0
-    ExtUtils::MakeMaker             6.80
-    ExtUtils::ParseXS               3.22
-    ExtUtils::XSpp                  0
-    ExtUtils::XSpp::Cmd             0
-    ExtUtils::CppGuess              0
-    ExtUtils::Typemaps              0
-    ExtUtils::Typemaps::Basic       0
-    File::Basename                  0
-    File::Spec                      0
-    Getopt::Long                    0
-    Module::Build::WithXSpp         0.14
-    Moo                             1.003001
-    POSIX                           0
-    Scalar::Util                    0
-    Test::More                      0
-    IO::Scalar                      0
-    Time::HiRes                     0
-);
-my %recommends = qw(
-    Class::XSAccessor               0
-    Test::Harness                   0
-);
-
-my $sudo    = grep { $_ eq '--sudo' } @ARGV;
-my $nolocal = grep { $_ eq '--nolocal' }  @ARGV;
-
-my @missing_prereqs = ();
-if ($ENV{SLIC3R_NO_AUTO}) {
-    foreach my $module (sort keys %prereqs) {
-        my $version = $prereqs{$module};
-        next if eval "use $module $version; 1";
-        push @missing_prereqs, $module if exists $prereqs{$module};
-        print "Missing prerequisite $module $version\n";
-    }
-    foreach my $module (sort keys %recommends) {
-        my $version = $recommends{$module};
-        next if eval "use $module $version; 1";
-        print "Missing optional $module $version\n";
-    }
-} else {
-    my @try = (
-        $ENV{CPANM} // (),
-        File::Spec->catfile($Config{sitebin}, 'cpanm'),
-        File::Spec->catfile($Config{installscript}, 'cpanm'),
-    );
-    
-    my $cpanm;
-    foreach my $path (@try) {
-        if (-e $path) {  # don't use -x because it fails on Windows
-            $cpanm = $path;
-            last;
-        }
-    }
-    if (!$cpanm) {
-        if ($^O =~ /^(?:darwin|linux)$/ && system(qw(which cpanm)) == 0) {
-            $cpanm = 'cpanm';
-        }
-    }
-    die <<'EOF'
-cpanm was not found. Please install it before running this script.
-
-There are several ways to install cpanm, try one of these:
-
-    apt-get install cpanminus
-    curl -L http://cpanmin.us | perl - --sudo App::cpanminus
-    cpan App::cpanminus
-
-If it is installed in a non-standard location you can do:
-    
-    CPANM=/path/to/cpanm perl Build.PL
-
-EOF
-        if !$cpanm;
-    my @cpanm_args = ();
-    push @cpanm_args, "--sudo" if $sudo;
-
-    # install local::lib without --local-lib otherwise it's not usable afterwards
-    if (!eval "use local::lib qw(local-lib); 1") {
-        my $res = system $cpanm, @cpanm_args, 'local::lib';
-        warn "Warning: local::lib is required. You might need to run the `cpanm --sudo local::lib` command in order to install it.\n"
-            if $res != 0;
-    }
-    
-    push @cpanm_args, ('--local-lib', 'local-lib') if ! $nolocal;
-
-    # make sure our cpanm is updated (old ones don't support the ~ syntax)
-    system $cpanm, @cpanm_args, 'App::cpanminus';
-    
-    my %modules = (%prereqs, %recommends);
-    foreach my $module (sort keys %modules) {
-        my $version = $modules{$module};
-        my @cmd = ($cpanm, @cpanm_args);
-        
-        # temporary workaround for upstream bug in test
-        push @cmd, '--notest'
-            if $module =~ /^(?:OpenGL|Test::Harness)$/;
-        
-        push @cmd, "$module~$version";
-
-        my $res = system @cmd;
-        if ($res != 0) {
-            if (exists $prereqs{$module}) {
-                push @missing_prereqs, $module;
-            } else {
-                printf "Don't worry, this module is optional.\n";
-            }
-        }
-    }
-}
-
-print "\n";
-print "In the next step, you need to build the PrusaSlicer C++ library.\n";
-print "1) Create a build directory and change to it\n";
-print "2) run cmake .. -DCMAKE_BUILD_TYPE=Release\n";
-print "3) run make\n";
-print "4) to execute the automatic tests, run ctest --verbose\n";
-__END__

+ 0 - 13
CMakeLists.txt

@@ -39,7 +39,6 @@ option(SLIC3R_FHS               "Assume PrusaSlicer is to be installed in a FHS
 option(SLIC3R_PCH               "Use precompiled headers" 1)
 option(SLIC3R_MSVC_COMPILE_PARALLEL "Compile on Visual Studio in parallel" 1)
 option(SLIC3R_MSVC_PDB          "Generate PDB files on MSVC in Release mode" 1)
-option(SLIC3R_PERL_XS           "Compile XS Perl module and enable Perl unit and integration tests" 0)
 option(SLIC3R_ASAN              "Enable ASan on Clang and GCC" 0)
 option(SLIC3R_UBSAN             "Enable UBSan on Clang and GCC" 0)
 option(SLIC3R_ENABLE_FORMAT_STEP "Enable compilation of STEP file support" ON)
@@ -83,7 +82,6 @@ option(SLIC3R_BUILD_TESTS       "Build unit tests" ON)
 
 if (IS_CROSS_COMPILE)
     message("Detected cross compilation setup. Tests and encoding checks will be forcedly disabled!")
-    set(SLIC3R_PERL_XS OFF CACHE BOOL "" FORCE)
     set(SLIC3R_BUILD_TESTS OFF CACHE BOOL "" FORCE)
 endif ()
 
@@ -176,10 +174,6 @@ if(NOT WIN32)
     add_compile_options("$<$<CONFIG:DEBUG>:-DDEBUG>")
 endif()
 
-# To be able to link libslic3r with the Perl XS module.
-# Once we get rid of Perl and libslic3r is linked statically, we can get rid of -fPIC
-set(CMAKE_POSITION_INDEPENDENT_CODE ON)
-
 # WIN10SDK_PATH is used to point CMake to the WIN10 SDK installation directory.
 # We pick it from environment if it is not defined in another way
 if(WIN32)
@@ -621,13 +615,6 @@ set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT P
 
 add_dependencies(gettext_make_pot hintsToPot)
 
-# Perl bindings, currently only used for the unit / integration tests of libslic3r.
-# Also runs the unit / integration tests.
-#FIXME Port the tests into C++ to finally get rid of the Perl!
-if (SLIC3R_PERL_XS)
-    add_subdirectory(xs)
-endif ()
-
 if(SLIC3R_BUILD_SANDBOXES)
     add_subdirectory(sandboxes)
 endif()

+ 0 - 103
PrusaSlicer.sublime-project

@@ -1,103 +0,0 @@
-{
-	"build_systems":
-	[
-		{
-			"name": "List",
-   			//"file_regex": " at ([^-\\s]*) line ([0-9]*)",
-//   			"file_regex": " at (D\\:\\/src\\/Slic3r\\/.*?) line ([0-9]*)",
-			"shell_cmd": "ls -l"
-		},
-		{
-			"name": "Run",
-			"working_dir": "$project_path",
-   			"file_regex": " at (.*?) line ([0-9]*)",
-//			"shell_cmd": "chdir & perl slic3r.pl  --DataDir \"C:\\Users\\Public\\Documents\\Prusa3D\\Slic3r settings MK2\" --gui \"..\\Slic3r-tests\\gap fill torture 20 -rt.stl\""
-			"shell_cmd": "chdir & perl slic3r.pl"
-		},
-		{
-			"name": "full",
-   			"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
-			"shell_cmd": "chdir & perl Build.pl"
-		},
-		{
-			"name": "xs",
-			"working_dir": "$project_path/build",
-			// for Visual Studio:
-  			"file_regex": "^(..[^:]*)\\(([0-9]+)\\)(.*)$",
-  			// For GCC:
-// 			"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
-			"shell_cmd": "chdir & ninja -j 6 -v",
-			"env": {
-//				"PATH": "C:\\Program Files (x86)\\MSBuild\\12.0\\bin\\amd64;C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\VC\\BIN\\amd64;C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\Common7\\IDE;C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\Common7\\Tools;%PATH%;c:\\wperl64d\\site\\bin;c:\\wperl64d\\bin",
-//				"PERL_CPANM_HOME": "c:\\wperl64d\\cpanm",
-//				"WXDIR": "D:\\src-perl\\wxWidgets-3.0.3-beta1",
-//				"BOOST_DIR": "D:\\src-perl\\boost_1_61_0",
-//				"BOOST_INCLUDEDIR": "D:\\src-perl\\boost_1_61_0",
-//				"BOOST_LIBRARYDIR": "D:\\src-perl\\boost_1_61_0\\stage\\x64\\lib",
-//				"SLIC3R_STATIC": "1"
-			}
-		},
-		{
-			"name": "xs & run",
-			"working_dir": "$project_path/build",
-  			"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
-			"shell_cmd": "chdir & ninja -j 6 & cd .. & perl slic3r.pl --gui \"..\\Slic3r-tests\\star3-big2.stl\""
-		},
-		{
-			"name": "Slic3r - clean",
-			"working_dir": "$project_path/build",
-			"file_regex": "^(..[^:]*)(?::|\\()([0-9]+)(?::|\\))(?:([0-9]+):)?\\s*(.*)",
-			"shell_cmd": ["chdir & ninja clean"]
-		},
-		{
-			"name": "run tests",
-			"working_dir": "$project_path/build",
-			// for Visual Studio:
-  			"file_regex": "^(..[^:]*)\\(([0-9]+)\\)(.*)$",
-			"shell_cmd": "chdir & ctest --verbose"
-		},
-		{
-			"name": "Clean & Configure",
-			"working_dir": "$project_path",
-			// for Visual Studio:
-			"file_regex": "^(..[^:]*)(?::|\\()([0-9]+)(?::|\\))(?:([0-9]+):)?\\s*(.*)",
-			"shell_cmd": "chdir & rmdir /S /Q build & mkdir build & cd build & cmake -G Ninja .. -DCMAKE_COLOR_MAKEFILE=OFF -DCMAKE_RULE_PROGRESS=OFF  -DCMAKE_RULE_MESSAGES=OFF -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo"
-		},
-		{
-			"name": "Configure",
-			"working_dir": "$project_path/build",
-			// for Visual Studio:
-			"file_regex": "^(..[^:]*)(?::|\\()([0-9]+)(?::|\\))(?:([0-9]+):)?\\s*(.*)",
-			"shell_cmd": "cmake -G Ninja .. -DCMAKE_COLOR_MAKEFILE=OFF -DCMAKE_RULE_PROGRESS=OFF  -DCMAKE_RULE_MESSAGES=OFF -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo"
-		}
-	],
-	"folders":
-	[
-		{
-			"path": ".",
-//	        "folder_exclude_patterns": [".svn", "._d", ".metadata", ".settings"],
-	        "file_exclude_patterns": ["XS.c", "*.pch", "*.ilk", "*.js" ]
-		}
-	],
-
-    "settings":
-    {
-        "sublimegdb_workingdir": "${folder:${project_path:run}}",
-  		// NOTE: You MUST provide --interpreter=mi for the plugin to work
-//    	"sublimegdb_commandline": "D:\\Qt\\Tools\\mingw492_32\\bin\\gdb.exe --interpreter=mi -ex 'target localhost:2345'",
-//    	"sublimegdb_commandline": "D:\\Qt\\Tools\\mingw492_32\\bin\\gdb.exe --interpreter=mi perl --args perl slic3r.pl",
-//    	"sublimegdb_commandline": "D:\\Qt\\Tools\\mingw492_32\\bin\\gdb.exe --interpreter=mi perl --args slic3r.pl ",
-//    	"sublimegdb_commandline": "D:\\Qt\\Tools\\mingw492_32\\bin\\gdb.exe --interpreter=mi -e C:\\Strawberry\\perl\\bin\\perl.exe -s C:\\Strawberry\\perl\\site\\lib\\auto\\Slic3r\\XS\\XS.xs.dll --args perl slic3r.pl -j 1 --gui D:\\src\\Slic3r-tests\\star3-big.stl",
-    	"sublimegdb_commandline": "D:\\Qt\\Tools\\mingw492_32\\bin\\gdb.exe --interpreter=mi perl.exe --args perl slic3r.pl -j 1 --gui", //  D:\\src\\Slic3r-tests\\star3-big.stl",
-//    	"sublimegdb_commandline": "D:\\Qt\\Tools\\mingw492_32\\bin\\gdb.exe --interpreter=mi -x slic3r.gdb",
-//    	"arguments": "slic3r -j 1 --gui ../Slic3r-tests/star3-big.stl",
-//	  	"arguments": "../slic3r.pl -j 1 --gui",
-//        "sublimegdb_exec_cmd": "-exec-continue",
-    	
-    	// Add "pending breakpoints" for symbols that are dynamically loaded from
-    	// external shared libraries
-    	"debug_ext" : true,
-    	"run_after_init": false,
-    	"close_views": false
-    }
-}

+ 1 - 4
README.md

@@ -19,10 +19,7 @@ the [documentation directory](doc/) for more information.
 
 ### What language is it written in?
 
-All user facing code is written in C++, and some legacy code as well as unit
-tests are written in Perl. Perl is not required for either development or use
-of PrusaSlicer.
-
+All user facing code is written in C++.
 The slicing core is the `libslic3r` library, which can be built and used in a standalone way.
 The command line interface is a thin wrapper over `libslic3r`.
 

+ 0 - 109
cmake/modules/FindAlienWx.cmake

@@ -1,109 +0,0 @@
-# Find the wxWidgets module based on the information provided by the Perl Alien::wxWidgets module.
-
-# Check for the Perl & PerlLib modules
-include(LibFindMacros)
-libfind_package(AlienWx Perl)
-libfind_package(AlienWx PerlLibs)
-
-if (AlienWx_DEBUG)
-  message(STATUS "  AlienWx_FIND_COMPONENTS=${AlienWx_FIND_COMPONENTS}")
-endif()
-
-# Execute an Alien::Wx module to find the relevant information regarding
-# the wxWidgets used by the Perl interpreter.
-# Perl specific stuff
-set(AlienWx_TEMP_INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/AlienWx_TEMP_INCLUDE.txt)
-execute_process(
-    COMMAND ${PERL_EXECUTABLE} -e "
-# Import Perl modules.
-use strict;
-use warnings;
-use Text::ParseWords;
-
-BEGIN {
-  # CMake sets the environment variables CC and CXX to the detected C compiler.
-  # There is an issue with the Perl ExtUtils::CBuilder, which does not handle whitespaces
-  # in the paths correctly on Windows, so we rather drop the CMake auto-detected paths.
-  delete \$ENV{CC};
-  delete \$ENV{CXX};
-}
-
-use Alien::wxWidgets;
-use ExtUtils::CppGuess;
-
-# Test for a Visual Studio compiler
-my \$cpp_guess = ExtUtils::CppGuess->new;
-my \$mswin = \$^O eq 'MSWin32';
-my \$msvc  = \$cpp_guess->is_msvc;
-
-# List of wxWidgets components to be used.
-my @components    = split /;/, '${AlienWx_FIND_COMPONENTS}';
-
-# Query the available data from Alien::wxWidgets.
-my \$version      = Alien::wxWidgets->version;
-my \$config       = Alien::wxWidgets->config;
-my \$compiler     = Alien::wxWidgets->compiler;
-my \$linker       = Alien::wxWidgets->linker;
-my \$include_path = ' ' . Alien::wxWidgets->include_path;
-my \$defines      = ' ' . Alien::wxWidgets->defines;
-my \$cflags       = Alien::wxWidgets->c_flags;
-my \$linkflags    = Alien::wxWidgets->link_flags;
-my \$libraries    = ' ' . Alien::wxWidgets->libraries(@components);
-my \$gui_toolkit  = Alien::wxWidgets->config->{toolkit};
-#my @libraries     = Alien::wxWidgets->link_libraries(@components);
-#my @implib        = Alien::wxWidgets->import_libraries(@components);
-#my @shrlib        = Alien::wxWidgets->shared_libraries(@components);
-#my @keys          = Alien::wxWidgets->library_keys; # 'gl', 'adv', ...
-#my \$library_path = Alien::wxWidgets->shared_library_path;
-#my \$key          = Alien::wxWidgets->key;
-#my \$prefix       = Alien::wxWidgets->prefix;
-
-my \$filename     = '${AlienWx_TEMP_INCLUDE}';
-open(my $fh, '>', \$filename) or die \"Could not open file '\$filename' \$!\";
-
-# Convert a space separated lists to CMake semicolon separated lists,
-# escape the backslashes,
-# export the resulting list to a temp file.
-sub cmake_set_var {
-  my (\$varname, \$content) = @_;
-  # Remove line separators.
-  \$content =~ s/\\r|\\n//g;
-  # Escape the path separators.
-  \$content =~ s/\\\\/\\\\\\\\\\\\\\\\/g;
-  my @words = shellwords(\$content); 
-  print \$fh \"set(AlienWx_\$varname \\\"\" . join(';', @words) . \"\\\")\\n\";    
-}
-cmake_set_var('VERSION', \$version);
-\$include_path =~ s/ -I/ /g;
-cmake_set_var('INCLUDE_DIRS', \$include_path);
-\$libraries =~ s/ -L/ -LIBPATH:/g if \$msvc;
-cmake_set_var('LIBRARIES', \$libraries);
-#cmake_set_var('LIBRARY_DIRS', );
-#\$defines =~ s/ -D/ /g;
-cmake_set_var('DEFINITIONS', \$defines);
-#cmake_set_var('DEFINITIONS_DEBUG', );
-cmake_set_var('CXX_FLAGS', \$cflags);
-cmake_set_var('GUI_TOOLKIT', \$gui_toolkit);
-close \$fh;
-")
-include(${AlienWx_TEMP_INCLUDE})
-file(REMOVE ${AlienWx_TEMP_INCLUDE})
-unset(AlienWx_TEMP_INCLUDE)
-
-if (AlienWx_DEBUG)
-  message(STATUS "  AlienWx_VERSION           = ${AlienWx_VERSION}")
-  message(STATUS "  AlienWx_INCLUDE_DIRS      = ${AlienWx_INCLUDE_DIRS}")
-  message(STATUS "  AlienWx_LIBRARIES         = ${AlienWx_LIBRARIES}")
-  message(STATUS "  AlienWx_LIBRARY_DIRS      = ${AlienWx_LIBRARY_DIRS}")
-  message(STATUS "  AlienWx_DEFINITIONS       = ${AlienWx_DEFINITIONS}")
-  message(STATUS "  AlienWx_DEFINITIONS_DEBUG = ${AlienWx_DEFINITIONS_DEBUG}")
-  message(STATUS "  AlienWx_CXX_FLAGS         = ${AlienWx_CXX_FLAGS}")
-  message(STATUS "  AlienWx_GUI_TOOLKIT       = ${AlienWx_GUI_TOOLKIT}")
-endif()
-
-include(FindPackageHandleStandardArgs)
-
-find_package_handle_standard_args(AlienWx 
-    REQUIRED_VARS AlienWx_INCLUDE_DIRS AlienWx_LIBRARIES
-#    HANDLE_COMPONENTS
-    VERSION_VAR AlienWx_VERSION)

+ 0 - 88
cmake/modules/FindPerlEmbed.cmake

@@ -1,88 +0,0 @@
-# Find the dependencies for linking with the Perl runtime library.
-
-# Check for the Perl & PerlLib modules
-include(LibFindMacros)
-libfind_package(PerlEmbed Perl)
-libfind_package(PerlEmbed PerlLibs)
-
-# Execute an Alien::Wx module to find the relevant information regarding
-# the wxWidgets used by the Perl interpreter.
-# Perl specific stuff
-set(PerlEmbed_TEMP_INCLUDE ${CMAKE_CURRENT_BINARY_DIR}/PerlEmbed_TEMP_INCLUDE.txt)
-execute_process(
-    COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e "
-# Import Perl modules.
-use strict;
-use warnings;
-use Config;
-use Text::ParseWords;
-use ExtUtils::CppGuess;
-
-# Test for a Visual Studio compiler
-my \$cpp_guess = ExtUtils::CppGuess->new;
-my \$mswin = \$^O eq 'MSWin32';
-my \$msvc  = \$cpp_guess->is_msvc;
-
-# Query the available data from Alien::wxWidgets.
-my \$ccflags;
-my \$ldflags;
-{ local *STDOUT; open STDOUT, '>', \\\$ccflags; ccflags; }
-{ local *STDOUT; open STDOUT, '>', \\\$ldflags; ldopts; }
-\$ccflags = ' ' . \$ccflags;
-\$ldflags = ' ' . \$ldflags;
-
-my \$filename     = '${PerlEmbed_TEMP_INCLUDE}';
-open(my $fh, '>', \$filename) or die \"Could not open file '\$filename' \$!\";
-
-# Convert a space separated lists to CMake semicolon separated lists,
-# escape the backslashes,
-# export the resulting list to a temp file.
-sub cmake_set_var {
-  my (\$varname, \$content) = @_;
-  # Remove line separators.
-  \$content =~ s/\\r|\\n//g;
-  # Escape the path separators.
-  \$content =~ s/\\\\/\\\\\\\\\\\\\\\\/g;
-  my @words = shellwords(\$content); 
-  print \$fh \"set(PerlEmbed_\$varname \\\"\" . join(';', @words) . \"\\\")\\n\";
-}
-cmake_set_var('ARCHNAME',   \$Config{archname});
-cmake_set_var('CCFLAGS',    \$ccflags);
-\$ldflags =~ s/ -L/ -LIBPATH:/g if \$msvc;
-cmake_set_var('LD',         \$Config{ld});
-cmake_set_var('LDFLAGS',    \$ldflags);
-cmake_set_var('CCCDLFLAGS', \$Config{cccdlflags});
-cmake_set_var('LDDLFLAGS',  \$Config{lddlflags});
-cmake_set_var('DLEXT',      \$Config{dlext});
-close \$fh;
-")
-include(${PerlEmbed_TEMP_INCLUDE})
-file(REMOVE ${PerlEmbed_TEMP_INCLUDE})
-unset(PerlEmbed_TEMP_INCLUDE)
-
-if (PerlEmbed_DEBUG)
-  # First show the configuration extracted by FindPerl & FindPerlLibs:
-  message(STATUS " PERL_INCLUDE_PATH      = ${PERL_INCLUDE_PATH}")
-  message(STATUS " PERL_LIBRARY           = ${PERL_LIBRARY}")
-  message(STATUS " PERL_EXECUTABLE        = ${PERL_EXECUTABLE}")
-  message(STATUS " PERL_SITESEARCH        = ${PERL_SITESEARCH}")
-  message(STATUS " PERL_SITELIB           = ${PERL_SITELIB}")
-  message(STATUS " PERL_VENDORARCH        = ${PERL_VENDORARCH}")
-  message(STATUS " PERL_VENDORLIB         = ${PERL_VENDORLIB}")
-  message(STATUS " PERL_ARCHLIB           = ${PERL_ARCHLIB}")
-  message(STATUS " PERL_PRIVLIB           = ${PERL_PRIVLIB}")
-  message(STATUS " PERL_EXTRA_C_FLAGS     = ${PERL_EXTRA_C_FLAGS}")
-  # Second show the configuration extracted by this module (FindPerlEmbed):
-  message(STATUS " PerlEmbed_ARCHNAME     = ${PerlEmbed_ARCHNAME}")
-  message(STATUS " PerlEmbed_CCFLAGS      = ${PerlEmbed_CCFLAGS}")
-  message(STATUS " PerlEmbed_CCCDLFLAGS   = ${PerlEmbed_CCCDLFLAGS}")
-  message(STATUS " LD                     = ${PerlEmbed_LD}")
-  message(STATUS " PerlEmbed_LDFLAGS      = ${PerlEmbed_LDFLAGS}")
-  message(STATUS " PerlEmbed_LDDLFLAGS    = ${PerlEmbed_LDDLFLAGS}")
-endif()
-
-include(FindPackageHandleStandardArgs)
-
-find_package_handle_standard_args(PerlEmbed 
-  REQUIRED_VARS PerlEmbed_CCFLAGS PerlEmbed_LDFLAGS
-  VERSION_VAR PERL_VERSION)

+ 1 - 1
deps/+OpenVDB/OpenVDB.cmake

@@ -15,7 +15,7 @@ endif ()
 
 add_cmake_project(OpenVDB
     # 8.2 patched
-    URL https://github.com/tamasmeszaros/openvdb/archive/a68fd58d0e2b85f01adeb8b13d7555183ab10aa5.zip
+    URL https://github.com/prusa3d/openvdb/archive/a68fd58d0e2b85f01adeb8b13d7555183ab10aa5.zip
     URL_HASH SHA256=f353e7b99bd0cbfc27ac9082de51acf32a8bc0b3e21ff9661ecca6f205ec1d81
     CMAKE_ARGS
         -DCMAKE_POSITION_INDEPENDENT_CODE=ON 

+ 0 - 61
lib/Slic3r.pm

@@ -1,61 +0,0 @@
-#/|/ Copyright (c) Prusa Research 2016 - 2022 Vojtěch Bubník @bubnikv, Tomáš Mészáros @tamasmeszaros, Vojtěch Král @vojtechkral, Oleksandra Iushchenko @YuSanka
-#/|/ Copyright (c) 2018 Martin Loidl @LoidlM
-#/|/ Copyright (c) Slic3r 2011 - 2016 Alessandro Ranellucci @alranel
-#/|/ Copyright (c) 2012 Henrik Brix Andersen @henrikbrixandersen
-#/|/ Copyright (c) 2012 Mark Hindess
-#/|/ Copyright (c) 2012 Michael Moon
-#/|/ Copyright (c) 2011 Clarence Risher
-#/|/
-#/|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-#/|/
-# This package loads all the non-GUI Slic3r perl packages.
-
-package Slic3r;
-
-# Copyright holder: Alessandro Ranellucci
-# This application is licensed under the GNU Affero General Public License, version 3
-
-use strict;
-use warnings;
-use Config;
-require v5.10;
-
-our $VERSION = VERSION();
-our $BUILD = BUILD();
-our $FORK_NAME = FORK_NAME();
-
-our $debug = 0;
-sub debugf {
-    printf @_ if $debug;
-}
-
-our $loglevel = 0;
-
-BEGIN {
-    $debug = 1 if (defined($ENV{'SLIC3R_DEBUGOUT'}) && $ENV{'SLIC3R_DEBUGOUT'} == 1);
-    print "Debugging output enabled\n" if $debug;
-}
-
-use FindBin;
-
-use Moo 1.003001;
-
-use Slic3r::XS;   # import all symbols (constants etc.) before they get parsed
-use Slic3r::Config;
-use Slic3r::GCode::Reader;
-use Slic3r::Line;
-use Slic3r::Model;
-use Slic3r::Point;
-use Slic3r::Polygon;
-use Slic3r::Polyline;
-our $build = eval "use Slic3r::Build; 1";
-
-# Scaling between the float and integer coordinates.
-# Floats are in mm.
-use constant SCALING_FACTOR         => 0.000001;
-
-# Set the logging level at the Slic3r XS module.
-$Slic3r::loglevel = (defined($ENV{'SLIC3R_LOGLEVEL'}) && $ENV{'SLIC3R_LOGLEVEL'} =~ /^[1-9]/) ? $ENV{'SLIC3R_LOGLEVEL'} : 0;
-set_logging_level($Slic3r::loglevel);
-
-1;

+ 0 - 46
lib/Slic3r/Config.pm

@@ -1,46 +0,0 @@
-#/|/ Copyright (c) Prusa Research 2016 - 2022 Vojtěch Bubník @bubnikv
-#/|/ Copyright (c) 2017 Joseph Lenox @lordofhyphens
-#/|/ Copyright (c) Slic3r 2011 - 2016 Alessandro Ranellucci @alranel
-#/|/ Copyright (c) 2015 Alexander Rössler @machinekoder
-#/|/ Copyright (c) 2012 Henrik Brix Andersen @henrikbrixandersen
-#/|/ Copyright (c) 2012 Mark Hindess
-#/|/ Copyright (c) 2012 Josh McCullough
-#/|/ Copyright (c) 2011 - 2012 Michael Moon
-#/|/ Copyright (c) 2012 Simon George
-#/|/ Copyright (c) 2012 Johannes Reinhardt
-#/|/ Copyright (c) 2011 Clarence Risher
-#/|/
-#/|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
-#/|/
-# Extends C++ class Slic3r::DynamicPrintConfig
-# This perl class does not keep any perl class variables,
-# all the storage is handled by the underlying C++ code.
-package Slic3r::Config;
-use strict;
-use warnings;
-use utf8;
-
-use List::Util qw(first max);
-
-# C++ Slic3r::PrintConfigDef exported as a Perl hash of hashes.
-# The C++ counterpart is a constant singleton.
-our $Options = print_config_def();
-
-# Generate accessors.
-{
-    no strict 'refs';
-    for my $opt_key (keys %$Options) {
-        *{$opt_key} = sub { 
-            #print "Slic3r::Config::accessor $opt_key\n"; 
-            $_[0]->get($opt_key)
-        };
-    }
-}
-
-package Slic3r::Config::Static;
-use parent 'Slic3r::Config';
-
-sub Slic3r::Config::GCode::new { Slic3r::Config::Static::new_GCodeConfig }
-sub Slic3r::Config::Print::new { Slic3r::Config::Static::new_PrintConfig }
-
-1;

Некоторые файлы не были показаны из-за большого количества измененных файлов