Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lib3mf libs update from repo branch #329

Closed
wants to merge 31 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
45b65bd
NC-15765: adding zlib as external project via cmake
gangatp Nov 20, 2023
9407537
handle offline mode
gangatp Nov 21, 2023
a0c35f0
adding zlib as submodule
gangatp Nov 23, 2023
43a5cdd
cpp-base64 updated
gangatp Nov 28, 2023
7ab3e82
updating zlib
gangatp Nov 28, 2023
2bc3c8f
updating libzip
gangatp Nov 29, 2023
61fb189
removed old googletest
gangatp Nov 29, 2023
3f38562
removed old libressl
gangatp Nov 29, 2023
e1fd132
updating googletest
gangatp Nov 30, 2023
03463ef
libressl copied release version
gangatp Dec 5, 2023
d378a19
updating github workflows mac and ubuntu OS versions
gangatp Dec 6, 2023
debe821
checking mingw and unix build
gangatp Dec 6, 2023
7b98217
adding platform specific libzip headers
gangatp Dec 6, 2023
69260f1
libzip unix compile options
gangatp Dec 6, 2023
7b60c8e
fixing mac build
gangatp Dec 7, 2023
653f3ea
fixing linux version
gangatp Dec 7, 2023
5f0c770
fixing win32 build
gangatp Dec 7, 2023
4c729be
checking mingw build
gangatp Dec 7, 2023
d7e7eb1
fixing memory leak in linux build
gangatp Dec 7, 2023
789a37c
Revert "fixing memory leak in linux build"
gangatp Dec 7, 2023
2f69582
try mem leak linux fix
gangatp Dec 7, 2023
2ae7424
try linux build mem leak using insert
gangatp Dec 7, 2023
8ad5e9b
reserve vector size
gangatp Dec 8, 2023
9fa28e3
checking valgrind in debug build
gangatp Dec 8, 2023
7b9781b
checking lib3mf ubuntu mem leak in debug mode
gangatp Dec 11, 2023
c350617
checking lib3mf ubuntu mem leak in debug mode
gangatp Dec 11, 2023
5a8139b
updating with ubuntu latest
gangatp Dec 11, 2023
107cd28
adding sudo apt update to ubuntu
gangatp Dec 11, 2023
bc47b4e
fixing decryption size in RSA
gangatp Dec 12, 2023
53e4f94
try linux build mem leak using insert
gangatp Dec 12, 2023
b3d3107
remove debug config
gangatp Dec 12, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
13 changes: 7 additions & 6 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@ on: [push, pull_request]
name: Build
jobs:
build-linux:
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
steps:
- run: sudo apt update
- run: sudo apt install -y valgrind uuid-dev
- uses: actions/checkout@v2
with:
Expand All @@ -25,7 +26,7 @@ jobs:
name: bindings.zip
path: build/bindings.zip
build-macos:
runs-on: macos-10.15
runs-on: macos-11
steps:
- uses: actions/checkout@v2
with:
Expand All @@ -42,7 +43,7 @@ jobs:
path: build/lib3mf.dylib

codecoverage-macos:
runs-on: macos-10.15
runs-on: macos-11
steps:
- uses: actions/checkout@v2
with:
Expand Down Expand Up @@ -139,7 +140,7 @@ jobs:
- run: ctest -V
working-directory: ./build
assemble-sdk:
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
needs: [build-windows-release, build-linux, build-macos]
steps:
- run: sudo apt install -y zip unzip
Expand All @@ -161,7 +162,7 @@ jobs:
name: lib3mf_sdk.zip
path: build/lib3mf_sdk.zip
deploy-linux:
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
needs: [assemble-sdk]
steps:
- run: sudo apt install -y zip unzip
Expand Down Expand Up @@ -213,7 +214,7 @@ jobs:
cmake --build . --config Release
./Release/Example_ExtractInfo.exe ../../Files/Helix.3mf
deploy-macos:
runs-on: macos-10.15
runs-on: macos-11
needs: [assemble-sdk]
steps:
- name: Download lib3mf_sdk artifact
Expand Down
18 changes: 12 additions & 6 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
[submodule "Tests/googletest"]
path = Tests/googletest
url = https://github.com/google/googletest.git
[submodule "Tests/libressl"]
path = Tests/libressl
url = https://github.com/3MFConsortium/forks-libressl-distribution.git
[submodule "submodules/AutomaticComponentToolkit"]
path = submodules/AutomaticComponentToolkit
url = https://github.com/Autodesk/AutomaticComponentToolkit.git
[submodule "submodules/zlib"]
path = submodules/zlib
url = https://github.com/madler/zlib.git
[submodule "submodules/libzip"]
path = submodules/libzip
url = https://github.com/nih-at/libzip.git
[submodule "submodules/cpp-base64"]
path = submodules/cpp-base64
url = https://github.com/ReneNyffenegger/cpp-base64.git
[submodule "submodules/googletest"]
path = submodules/googletest
url = https://github.com/google/googletest.git
49 changes: 42 additions & 7 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -115,19 +115,54 @@ add_library(${PROJECT_NAME} SHARED ${SRCS_COMMON} ${HDRS_COMMON}
)
SOURCE_GROUP("Source Files\\Autogenerated" FILES ${ACT_GENERATED_SOURCE})

file(GLOB
LIBS_INCLUDE
LIST_DIRECTORIES true
${CMAKE_CURRENT_SOURCE_DIR}/Libraries/*/Include
)
list(FILTER LIBS_INCLUDE EXCLUDE REGEX "zlib|libzip")


target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR_AUTOGENERATED}/Source)
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Include/API)
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Include)
target_include_directories(${PROJECT_NAME} PRIVATE ${LIBS_INCLUDE})

if (USE_INCLUDED_LIBZIP)
target_compile_options(${PROJECT_NAME} PRIVATE "-DZIP_STATIC")
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Include/Libraries/libzip)
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Libraries/libzip/Include)
if(MSVC)
target_compile_definitions(${PROJECT_NAME} PRIVATE _CRT_SECURE_NO_WARNINGS)
target_compile_definitions(${PROJECT_NAME} PRIVATE _CRT_NONSTDC_NO_DEPRECATE)
endif()
if(WIN32)
target_link_libraries(${PROJECT_NAME} PRIVATE advapi32)
# disable win32 build failing 'initializing': conversion from 'zip_uint64_t' to 'size_t', possible loss of data
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "4")
target_compile_options(${PROJECT_NAME} PRIVATE /wd4244)
endif()
endif()

# create libzip autogenerated platform specific headers
if(NOT EXISTS ${CMAKE_BINARY_DIR}/libzip)
execute_process(
COMMAND ${CMAKE_COMMAND} "-DZLIB_INCLUDE_DIR=${CMAKE_CURRENT_SOURCE_DIR}/submodules/zlib"
"-DZLIB_LIBRARY=zlibstatic" "-DENABLE_COMMONCRYPTO=OFF" "-DENABLE_GNUTLS=OFF" "-DENABLE_MBEDTLS=OFF"
"-DENABLE_OPENSSL=OFF" "-DENABLE_WINDOWS_CRYPTO=OFF"
"-DENABLE_BZIP2=OFF" "-DENABLE_LZMA=OFF" "-DENABLE_ZSTD=OFF"
"-DBUILD_TOOLS=OFF" "-DBUILD_REGRESS=OFF"
"-DBUILD_EXAMPLES=OFF" "-DBUILD_DOC=OFF" "-DBUILD_SHARED_LIBS=OFF" "-DLIBZIP_DO_INSTALL=OFF"
"-S" "${CMAKE_CURRENT_SOURCE_DIR}/submodules/libzip" "-B" "${CMAKE_CURRENT_BINARY_DIR}/libzip"
RESULT_VARIABLE CMD_ERROR
OUTPUT_QUIET)
MESSAGE( STATUS "CMD_ERROR:" ${CMD_ERROR})
endif()
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/libzip)

if (UNIX OR MINGW)
target_compile_options(${PROJECT_NAME} PRIVATE "-DHAVE_FSEEKO")
target_compile_options(${PROJECT_NAME} PRIVATE "-DHAVE_FTELLO")
target_compile_options(${PROJECT_NAME} PRIVATE "-DHAVE_STRCASECMP")
target_compile_options(${PROJECT_NAME} PRIVATE "-DHAVE_UNISTD_H")
target_compile_options(${PROJECT_NAME} PRIVATE "-DHAVE_FSEEKO")
target_compile_options(${PROJECT_NAME} PRIVATE "-DHAVE_FTELLO")
target_compile_options(${PROJECT_NAME} PRIVATE "-DHAVE_STRCASECMP")
target_compile_options(${PROJECT_NAME} PRIVATE "-DHAVE_UNISTD_H")
endif()

else()
Expand All @@ -136,7 +171,7 @@ else()
target_link_libraries(${PROJECT_NAME} ${LIBZIP_LIBRARIES})
endif()
if (USE_INCLUDED_ZLIB)
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Include/Libraries/zlib)
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Libraries/zlib/Include)
else()
find_package(PkgConfig REQUIRED)
pkg_check_modules(ZLIB REQUIRED zlib)
Expand Down
2 changes: 1 addition & 1 deletion Include/Common/OPC/NMR_OpcPackageReader.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ NMR_OpcPackageReader.h defines an OPC Package reader in a portable way.
#include "Common/OPC/NMR_OpcPackageRelationship.h"
#include "Common/3MF_ProgressMonitor.h"
#include "Common/NMR_ModelWarnings.h"
#include "Libraries/libzip/zip.h"
#include "zip.h"
#include <list>
#include <vector>
#include <map>
Expand Down
2 changes: 1 addition & 1 deletion Include/Common/Platform/NMR_ExportStream_Compressed.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ NMR_ExportStream_Compressed.h defines a stream to write compressed files
#include "Common/NMR_Types.h"
#include "Common/Platform/NMR_ExportStream.h"
#include "Common/Platform/NMR_PortableZIPWriter.h"
#include "Libraries/zlib/zlib.h"
#include <zlib.h>

#define EXPORTSTREAM_WRITE_BUFFER_CHUNKSIZE 1024

Expand Down
2 changes: 1 addition & 1 deletion Include/Common/Platform/NMR_ExportStream_ZIP.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ NMR_PortableZIPWriter.h defines a portable stream to write into ZIP files
#include "Common/NMR_Types.h"
#include "Common/Platform/NMR_ExportStream.h"
#include "Common/Platform/NMR_PortableZIPWriter.h"
#include "Libraries/zlib/zlib.h"
#include <zlib.h>

#include <array>

Expand Down
2 changes: 1 addition & 1 deletion Include/Common/Platform/NMR_ImportStream_Compressed.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ This is a stream class for importing from a compressed object.
#define __NMR_IMPORTSTREAM_COMPRESSED

#include "Common/Platform/NMR_ImportStream.h"
#include "Libraries/zlib/zlib.h"
#include <zlib.h>

#define IMPORTSTREAM_READ_BUFFER_CHUNKSIZE 1024
#define IMPORTSTREAM_COMPRESSED_CHUNKSIZE 1024
Expand Down
2 changes: 1 addition & 1 deletion Include/Common/Platform/NMR_ImportStream_ZIP.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ This is a stream class for importing from a libZIP object.
#define __NMR_IMPORTSTREAM_ZIP

#include "Common/Platform/NMR_ImportStream.h"
#include "Libraries/libzip/zip.h"
#include "zip.h"

#define IMPORTSTREAM_ZIP_CHUNKSIZE (1024 * 1024)

Expand Down
15 changes: 0 additions & 15 deletions Include/Libraries/cpp-base64/base64.h

This file was deleted.

62 changes: 0 additions & 62 deletions Include/Libraries/libzip/config.h

This file was deleted.

51 changes: 0 additions & 51 deletions Include/Libraries/libzip/zipconf.h

This file was deleted.

Loading
Loading