Skip to content

Commit 7e2c039

Browse files
committed
add xlnt as subtree
xlnt: Adding libs/EXTERNAL/xlnt/ as an external git subtree from https://github.com/tfussell/xlnt.git master
2 parents 1933857 + ef41a0b commit 7e2c039

File tree

390 files changed

+101032
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

390 files changed

+101032
-0
lines changed

libs/EXTERNAL/xlnt/.appveyor.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
version: "{build}"
2+
os: Visual Studio 2015
3+
4+
cache:
5+
- vcpkg -> .appveyor.yml
6+
7+
platform:
8+
- x64
9+
10+
configuration:
11+
- Debug
12+
13+
environment:
14+
matrix:
15+
- STATIC: OFF
16+
- STATIC: ON
17+
18+
matrix:
19+
fast_finish: true
20+
21+
init: []
22+
23+
before_build:
24+
- git submodule update --init --recursive
25+
- mkdir build
26+
- cd build
27+
- cmake -G "Visual Studio 14 2015" -D CMAKE_GENERATOR_PLATFORM=%platform% -D STATIC=%STATIC% -D SAMPLES=ON -D BENCHMARKS=ON -D TESTS=ON ..
28+
29+
build:
30+
project: build/xlnt_all.sln
31+
parallel: true
32+
verbosity: minimal
33+
34+
test_script:
35+
- tests\%configuration%\xlnt.test.exe
36+
- samples\%configuration%\sample-documentation.exe
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
version: 2.1
2+
3+
jobs:
4+
build:
5+
docker:
6+
- image: lycantropos/cmake:3.9.5
7+
parameters:
8+
benchmarks:
9+
default: "OFF"
10+
type: string
11+
build-type:
12+
default: Release
13+
type: string
14+
coverage:
15+
default: "OFF"
16+
type: string
17+
cxx-ver:
18+
default: "11"
19+
type: string
20+
samples:
21+
default: "OFF"
22+
type: string
23+
static:
24+
default: "ON"
25+
type: string
26+
steps:
27+
- checkout
28+
- run: git submodule update --init --recursive
29+
- run: cmake -D XLNT_CXX_LANG=<< parameters.cxx-ver >> -D STATIC=<< parameters.static >> -D BENCHMARKS=<< parameters.benchmarks >> -D TESTS=ON -D SAMPLES=<< parameters.samples >> -D COVERAGE=<< parameters.coverage >> -D CMAKE_BUILD_TYPE=<< parameters.build-type >> .
30+
- run: cmake --build . -- -j2
31+
- run: ./tests/xlnt.test
32+
- when:
33+
condition:
34+
equal: ["ON", << parameters.samples >>]
35+
steps:
36+
- run: ./samples/sample-decrypt
37+
- run: ./samples/sample-img2xlsx ./samples/data/penguin.jpg img.xlsx
38+
- run: ./samples/sample-documentation
39+
- when:
40+
condition:
41+
equal: ["ON", << parameters.benchmarks >>]
42+
steps:
43+
- run: ./benchmarks/benchmark-styles
44+
- run: ./benchmarks/benchmark-writer
45+
- when:
46+
condition:
47+
equal: ["ON", << parameters.coverage >>]
48+
steps:
49+
- run: lcov --directory source/CMakeFiles/xlnt.dir --capture --output-file coverage.info --base-directory ../source --no-external --gcov-tool /usr/bin/gcov-6
50+
- run: lcov --output-file coverage.info --remove coverage.info source/detail/serialization/miniz.cpp
51+
- run: i=$(dirname $(pwd))
52+
- run: sed -i "s|$i/||" coverage.info
53+
- run: cd ..
54+
- run: coveralls-lcov build/coverage.info
55+
56+
workflows:
57+
build:
58+
jobs:
59+
- build:
60+
name: tests
61+
matrix:
62+
parameters:
63+
cxx-ver:
64+
- "11"
65+
- "17"
66+
build-type:
67+
- Release
68+
- Debug
69+
static:
70+
- "ON"
71+
- "OFF"
72+
- build:
73+
name: samples-benchmarks-coverage
74+
cxx-ver: "11"
75+
build-type: Debug
76+
static: "ON"
77+
samples: "ON"
78+
benchmarks: "ON"
79+
coverage: "OFF"

libs/EXTERNAL/xlnt/.clang-format

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
---
2+
BasedOnStyle: LLVM
3+
AccessModifierOffset: -4
4+
AlignAfterOpenBracket: DontAlign
5+
AlignConsecutiveAssignments: false
6+
AlignConsecutiveDeclarations: false
7+
AlignOperands: false
8+
AlignTrailingComments: false
9+
AllowAllParametersOfDeclarationOnNextLine: false
10+
AllowShortBlocksOnASingleLine: false
11+
AllowShortCaseLabelsOnASingleLine: false
12+
AllowShortFunctionsOnASingleLine: None
13+
AllowShortIfStatementsOnASingleLine: true
14+
AllowShortLoopsOnASingleLine: false
15+
AlwaysBreakBeforeMultilineStrings: true
16+
AlwaysBreakTemplateDeclarations: true
17+
BraceWrapping:
18+
AfterClass: true
19+
AfterControlStatement: true
20+
AfterEnum: true
21+
AfterFunction: true
22+
AfterNamespace: false
23+
AfterObjCDeclaration: true
24+
AfterStruct: true
25+
AfterUnion: true
26+
BeforeCatch: true
27+
BeforeElse: true
28+
BreakBeforeBinaryOperators: NonAssignment
29+
BreakBeforeBraces: Custom
30+
ColumnLimit: 0
31+
ConstructorInitializerAllOnOneLineOrOnePerLine: true
32+
Cpp11BracedListStyle: true
33+
DerivePointerAlignment: false
34+
DisableFormat: false
35+
IncludeCategories:
36+
- Regex: '^<xlnt/xlnt_config.hpp>$'
37+
Priority: 2
38+
- Regex: '^<xlnt/'
39+
Priority: 3
40+
- Regex: '^<detail/'
41+
Priority: 4
42+
- Regex: '^<.*>&'
43+
Priority: 1
44+
- Regex: '^".*"'
45+
Priority: 5
46+
IndentCaseLabels: false
47+
IndentWidth: 4
48+
KeepEmptyLinesAtTheStartOfBlocks: false
49+
Language: Cpp
50+
NamespaceIndentation: None
51+
MaxEmptyLinesToKeep: 1
52+
PenaltyBreakComment: 1000
53+
PointerAlignment: Right
54+
SortIncludes: true
55+
SpaceAfterCStyleCast: false
56+
SpaceBeforeParens: ControlStatements
57+
SpaceInEmptyParentheses: false
58+
SpacesBeforeTrailingComments: 1
59+
SpacesInAngles: false
60+
SpacesInCStyleCastParentheses: false
61+
SpacesInContainerLiterals: true
62+
SpacesInParentheses: false
63+
SpacesInSquareBrackets: false
64+
Standard: Cpp11
65+
UseTab: Never
66+
67+
...

libs/EXTERNAL/xlnt/.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* text=auto

libs/EXTERNAL/xlnt/.gitignore

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
build/
2+
docs/build/
3+
docs/doxyxml/
4+
node_modules/
5+
*.obj
6+
*.sdf
7+
*.suo
8+
*.opensdf
9+
*.vcxproj.user
10+
*.o
11+
#*#
12+
*~
13+
.DS_Store
14+
__pycache__/
15+
Win32/
16+
*.pyd
17+
python/record.txt
18+
python/xlntpyarrow.egg-info/
19+
/x64/
20+
.envrc
21+
.vscode
22+
/dist/
23+
/.vs/
24+
/out/
25+
/CMakeSettings.json

libs/EXTERNAL/xlnt/.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "third-party/libstudxml"]
2+
path = third-party/libstudxml
3+
url = https://git.codesynthesis.com/libstudxml/libstudxml.git
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{
2+
"git": {
3+
"commitMessage": "release v${version}",
4+
"requireBranch": "master",
5+
"requireCommits": true,
6+
"tagAnnotation": "release v${version}",
7+
"tagName": "v${version}"
8+
},
9+
"github": {
10+
"release": true,
11+
"releaseName": "xlnt v${version}"
12+
},
13+
"npm": {
14+
"publish": false
15+
},
16+
"plugins": {
17+
"@release-it/bumper": {
18+
"out": {
19+
"file": "source/CMakeLists.txt",
20+
"type": "text/plain"
21+
}
22+
}
23+
}
24+
}

libs/EXTERNAL/xlnt/AUTHORS.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
This project was started by Thomas Fussell.
2+
3+
It was initially inspired by the openpyxl library: https://openpyxl.readthedocs.org
4+
5+
Thanks to everyone who has contributed to this project (in alphabetical order):
6+
7+
* adam-nielsen
8+
* Malvineous
9+
* sukoi26
10+
* tpmccallum
11+
* xpol
12+
13+
Project logo designed by Thomas Fussell.

libs/EXTERNAL/xlnt/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Change Log
2+
3+
This project adheres to [Semantic Versioning](http://semver.org/).
4+
Every release is documented on the Github [Releases](https://github.com/tfussell/xlnt/releases) page.

libs/EXTERNAL/xlnt/CMakeLists.txt

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
cmake_minimum_required(VERSION 3.1)
2+
project(xlnt_all)
3+
4+
add_compile_options("$<$<C_COMPILER_ID:MSVC>:/utf-8>")
5+
add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
6+
7+
# CTest setup
8+
# include (CTest) # Add this for valgrind support; CTest works without it
9+
enable_testing()
10+
11+
# This indicates to CMakeLists in subdirectories that they are part of a larger project
12+
set(COMBINED_PROJECT TRUE)
13+
14+
# Library type
15+
option(STATIC "Set to ON to build xlnt as a static library instead of a shared library" OFF)
16+
17+
# c++ language standard to use
18+
set(XLNT_VALID_LANGS 11 14 17)
19+
set(XLNT_CXX_LANG "14" CACHE STRING "c++ language features to compile with")
20+
# enumerate allowed values for cmake gui
21+
set_property(CACHE XLNT_CXX_LANG PROPERTY STRINGS ${XLNT_VALID_LANGS})
22+
# validate value is in XLNT_VALID_LANGS
23+
list(FIND XLNT_VALID_LANGS ${XLNT_CXX_LANG} index)
24+
if(index EQUAL -1)
25+
message(FATAL_ERROR "XLNT_CXX_LANG must be one of ${XLNT_VALID_LANGS}")
26+
endif()
27+
28+
29+
# Optional components
30+
option(TESTS "Set to ON to build test executable (in ./tests)" OFF)
31+
option(SAMPLES "Set to ON to build executable code samples (in ./samples)" OFF)
32+
option(BENCHMARKS "Set to ON to build performance benchmarks (in ./benchmarks)" OFF)
33+
option(PYTHON "Set to ON to build Arrow conversion functions (in ./python)" OFF)
34+
35+
# Platform specific options
36+
if(MSVC)
37+
option(STATIC_CRT "Link with the static version of MSVCRT (/MD[d])" OFF)
38+
else()
39+
option(COVERAGE "Generate coverage data using gcov" OFF)
40+
endif()
41+
42+
# Add components according to selected options
43+
if(SAMPLES)
44+
add_subdirectory(samples)
45+
endif()
46+
47+
if(BENCHMARKS)
48+
add_subdirectory(benchmarks)
49+
endif()
50+
51+
if(TESTS)
52+
add_subdirectory(tests)
53+
endif()
54+
55+
if(PYTHON)
56+
add_subdirectory(python)
57+
endif()
58+
59+
add_subdirectory(source)

0 commit comments

Comments
 (0)