Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,6 @@
[submodule "thirdparty/mrbind"]
path = thirdparty/mrbind
url = https://github.com/MeshInspector/mrbind
[submodule "thirdparty/OpenCTM-git"]
path = thirdparty/OpenCTM-git
url = https://github.com/MeshInspector/OpenCTM.git
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -289,8 +289,8 @@ IF(MESHLIB_PYTHON_SUPPORT)
ENDIF()

IF(MSVC)
add_subdirectory(${MESHLIB_THIRDPARTY_DIR}/OpenCTM)
add_subdirectory(${PROJECT_SOURCE_DIR}/laz-perf)
add_subdirectory(${PROJECT_SOURCE_DIR}/OpenCTM)
ENDIF()

IF(NOT MR_EMSCRIPTEN)
Expand Down
4 changes: 3 additions & 1 deletion source/MRCommonPlugins/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,11 @@ ELSEIF(WIN32 OR MESHLIB_USE_VCPKG)
fmt::fmt
)
IF(NOT WIN32)
target_link_libraries(${PROJECT_NAME} PRIVATE clip )
find_package(clip REQUIRED)
target_link_libraries(${PROJECT_NAME} PRIVATE clip::clip)
ENDIF()
ELSE()
target_compile_definitions(${PROJECT_NAME} PRIVATE CLIP_ENABLE_IMAGE=1)
target_link_libraries(${PROJECT_NAME} PRIVATE
tbb
MRMesh
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@
#endif

#if !defined( _WIN32 ) && !defined( __EMSCRIPTEN__ )
#include <clip/clip.h>
#include <clip.h>
#endif

#include <unordered_set>
Expand Down
6 changes: 4 additions & 2 deletions source/MRIOExtras/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,9 @@ ENDIF()

IF(NOT MRIOEXTRAS_NO_CTM)
list(APPEND MRIOEXTRAS_DEPENDENCIES OpenCTM)
include_directories(${MESHLIB_THIRDPARTY_DIR})
IF(NOT MR_EMSCRIPTEN)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why? Can we use it as thirdparty for emscripten too?

target_include_directories(${PROJECT_NAME} PRIVATE $<BUILD_INTERFACE:${MESHLIB_THIRDPARTY_DIR}/OpenCTM-git/lib>)
ENDIF()
ENDIF()

IF(NOT MRIOEXTRAS_NO_E57)
Expand Down Expand Up @@ -85,7 +87,7 @@ ENDIF()
IF(NOT MRIOEXTRAS_NO_LAS)
list(APPEND MRIOEXTRAS_DEPENDENCIES lazperf)
IF(NOT MR_EMSCRIPTEN)
target_include_directories(${PROJECT_NAME} PRIVATE ${MESHLIB_THIRDPARTY_DIR}/laz-perf/cpp)
target_include_directories(${PROJECT_NAME} PRIVATE $<BUILD_INTERFACE:${MESHLIB_THIRDPARTY_DIR}/laz-perf/cpp>)
ENDIF()
ENDIF()

Expand Down
5 changes: 5 additions & 0 deletions source/MRIOExtras/MRCtm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,12 @@
#include <MRMesh/MRStringConvert.h>
#include <MRMesh/MRTimer.h>

// MSBuild compatibility
#if __has_include(<openctm.h>)
#include <openctm.h>
#else
#include <OpenCTM/openctm.h>
#endif

#include <fstream>

Expand Down
4 changes: 2 additions & 2 deletions source/MRIOExtras/MRIOExtras.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@
<ConformanceMode>true</ConformanceMode>
<TreatWarningAsError>true</TreatWarningAsError>
<PrecompiledHeaderFile>$(ProjectDir)..\MRPch\MRPch.h</PrecompiledHeaderFile>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);$(ProjectDir)..\..\thirdparty;$(ProjectDir)\..\..\thirdparty\laz-perf\cpp\</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);$(ProjectDir)..\..\thirdparty;$(ProjectDir)\..\..\thirdparty\laz-perf\cpp\;$(MeshLibDir)thirdparty\OpenCTM-git\lib\</AdditionalIncludeDirectories>
<ForcedIncludeFiles>$(ProjectDir)..\MRPch\MRPch.h</ForcedIncludeFiles>
<PrecompiledHeaderOutputFile>$(SolutionDir)TempOutput\MRPch\$(Platform)\$(Configuration)\MRPch.pch</PrecompiledHeaderOutputFile>
<DebugInformationFormat>OldStyle</DebugInformationFormat>
Expand Down Expand Up @@ -135,7 +135,7 @@ copy $(VcpkgCurrentInstalledDir)\bin\zlib1.dll $(TargetDir)zlib1.dll</Command>
<ConformanceMode>true</ConformanceMode>
<TreatWarningAsError>true</TreatWarningAsError>
<PrecompiledHeaderFile>$(ProjectDir)..\MRPch\MRPch.h</PrecompiledHeaderFile>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);$(ProjectDir)..\..\thirdparty;$(ProjectDir)\..\..\thirdparty\laz-perf\cpp\</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);$(ProjectDir)..\..\thirdparty;$(ProjectDir)\..\..\thirdparty\laz-perf\cpp\;$(MeshLibDir)thirdparty\OpenCTM-git\lib\</AdditionalIncludeDirectories>
<ForcedIncludeFiles>$(ProjectDir)..\MRPch\MRPch.h</ForcedIncludeFiles>
<PrecompiledHeaderOutputFile>$(SolutionDir)TempOutput\MRPch\$(Platform)\$(Configuration)\MRPch.pch</PrecompiledHeaderOutputFile>
<DebugInformationFormat>OldStyle</DebugInformationFormat>
Expand Down
2 changes: 1 addition & 1 deletion source/MRViewer/MRClipboard.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include <MRMesh/MRFinally.h>
#include "MRPch/MRWinapi.h"
#else
#include <clip/clip.h>
#include <clip.h>
#endif
#endif

Expand Down
3 changes: 3 additions & 0 deletions source/OpenCTM/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)

add_subdirectory(${MESHLIB_THIRDPARTY_DIR}/OpenCTM-git ./OpenCTM)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let us delete source/OpenCTM folder completely and take everything from submodule

53 changes: 25 additions & 28 deletions source/OpenCTM/OpenCTM.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -11,32 +11,29 @@
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\thirdparty\OpenCTM\Alloc.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\compressMG1.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\compressMG2.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\compressRAW.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\LzFind.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\LzmaDec.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\LzmaEnc.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\LzmaLib.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\openctm.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM\stream.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\compressMG1.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\compressMG2.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\compressRAW.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\Alloc.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzFind.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaDec.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaEnc.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaLib.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\openctm.c" />
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\stream.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\thirdparty\OpenCTM\Alloc.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\internal.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\LzFind.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\LzHash.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\LzmaDec.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\LzmaEnc.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\LzmaLib.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\NameMangle.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\openctm.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\openctmpp.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM\Types.h" />
</ItemGroup>
<ItemGroup>
<Text Include="..\..\thirdparty\OpenCTM\CMakeLists.txt" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\internal.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\Alloc.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzFind.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzHash.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaDec.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaEnc.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaLib.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\NameMangle.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\Types.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\openctm.h" />
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\openctmpp.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>15.0</VCProjectVersion>
Expand Down Expand Up @@ -75,10 +72,10 @@
<WarningLevel>Level4</WarningLevel>
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>OPENCTM_BUILD;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>OpenCTM_EXPORTS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<TreatWarningAsError>true</TreatWarningAsError>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(MeshLibDir)thirdparty\OpenCTM-git\lib\;$(MeshLibDir)thirdparty\OpenCTM-git\lib\liblzma\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<DebugInformationFormat>OldStyle</DebugInformationFormat>
</ClCompile>
<Link>
Expand All @@ -98,12 +95,12 @@
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>OPENCTM_BUILD;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>OpenCTM_EXPORTS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<TreatWarningAsError>true</TreatWarningAsError>
<PrecompiledHeaderFile>
</PrecompiledHeaderFile>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(MeshLibDir)thirdparty\OpenCTM-git\lib\;$(MeshLibDir)thirdparty\OpenCTM-git\lib\liblzma\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<DebugInformationFormat>OldStyle</DebugInformationFormat>
</ClCompile>
<Link>
Expand Down
47 changes: 21 additions & 26 deletions source/OpenCTM/OpenCTM.vcxproj.filters
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why not move these files to OpenCTM fork too?

Original file line number Diff line number Diff line change
Expand Up @@ -6,75 +6,70 @@
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\thirdparty\OpenCTM\Alloc.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\compressMG1.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\compressMG1.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\compressMG2.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\compressMG2.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\compressRAW.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\compressRAW.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\openctm.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\LzFind.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\stream.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\LzmaDec.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\Alloc.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\LzmaEnc.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzFind.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\LzmaLib.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaDec.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\openctm.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaEnc.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\thirdparty\OpenCTM\stream.c">
<ClCompile Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaLib.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\thirdparty\OpenCTM\Alloc.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\internal.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\internal.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\openctm.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\LzFind.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\openctmpp.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\LzHash.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\Alloc.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\LzmaDec.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzFind.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\LzmaEnc.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzHash.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\LzmaLib.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaDec.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\NameMangle.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaEnc.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\openctm.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\LzmaLib.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\openctmpp.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\NameMangle.h">
<Filter>Source Files</Filter>
</ClInclude>
<ClInclude Include="..\..\thirdparty\OpenCTM\Types.h">
<ClInclude Include="..\..\thirdparty\OpenCTM-git\lib\liblzma\Types.h">
<Filter>Source Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<Text Include="..\..\thirdparty\OpenCTM\CMakeLists.txt">
<Filter>Source Files</Filter>
</Text>
</ItemGroup>
</Project>
2 changes: 1 addition & 1 deletion source/laz-perf/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@ cmake_minimum_required(VERSION 3.16 FATAL_ERROR)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4244 /wd4245 /wd4456 /wd4458 /wd5051")
set(WITH_TESTS OFF CACHE BOOL "Choose if LAZPERF unit tests should be built")
add_subdirectory(../../thirdparty/laz-perf ./laz-perf)
add_subdirectory(${MESHLIB_THIRDPARTY_DIR}/laz-perf ./laz-perf)
4 changes: 1 addition & 3 deletions thirdparty/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ ELSE()
ENDIF()
ENDIF()

add_subdirectory(./OpenCTM ./OpenCTM)
add_subdirectory(./OpenCTM-git ./OpenCTM)

option(PHMAP_INSTALL "" ON)
add_subdirectory(./parallel-hashmap)
Expand Down Expand Up @@ -149,8 +149,6 @@ ELSE() # not MR_EMSCRIPTEN
set(BUILD_SHARED_LIBS ON)
set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
add_subdirectory(./clip)
file(GLOB CLIP_HEADERS "clip/*.h")
install(FILES ${CLIP_HEADERS} DESTINATION ${MESHLIB_THIRDPARTY_INCLUDE_DIR}/clip)

set(E57_GIT_SUBMODULE_UPDATE OFF)
set(E57_XML_PARSER TinyXML2 CACHE STRING "")
Expand Down
1 change: 1 addition & 0 deletions thirdparty/OpenCTM-git
Submodule OpenCTM-git added at 03bf80
Loading
Loading