Skip to content
New issue

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

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

Already on GitHub? # to your account

[build]1.3.1 apparently does not clone dependencies #248

Open
idruker-cerence opened this issue Apr 11, 2024 · 3 comments
Open

[build]1.3.1 apparently does not clone dependencies #248

idruker-cerence opened this issue Apr 11, 2024 · 3 comments

Comments

@idruker-cerence
Copy link

When launching a build, the dependencies must be cloned into third_party subdirectory. Apparently, that does not occur in 1.3.1. The issue does not exist in 1.2.1

@rmorozov
Copy link
Member

Hello, @idruker-cerence!

Would you mind providing me with a commands you use to clone and build?

git clone ...
cmake 
cmake --build 

?

@idruker-cerence
Copy link
Author

git clone -b 1.3.1 --depth 1 --recurse-submodules --shallow-submodules https://github.com/jinja2cpp/Jinja2Cpp.git ./third_party/jinja

cmake -G "Unix Makefiles" -S ./third_party/jinja -B ./build
-DCMAKE_INSTALL_PREFIX=./install
-DJINJA2CPP_DEPS_MODE=internal
-DJINJA2CPP_BUILD_TESTS=FALSE
-DJINJA2CPP_BUILD_SHARED=TRUE
cmake --build ./build -j 8 --config Release --target ./install

@idruker-cerence
Copy link
Author

Hello @rmorozov
I've noticed that .gitmodule was modified between 1.2.1 and 1.3.1 so the following git submodules

[submodule "thirdparty/boost"]
    path = thirdparty/boost
    url = https://github.com/google/boost.git
[submodule "thirdparty/gtest"]
    path = thirdparty/gtest
    url = https://github.com/google/googletest.git
[submodule "thirdparty/nonstd/expected-lite"]
	path = thirdparty/nonstd/expected-lite
	url = https://github.com/martinmoene/expected-lite.git
[submodule "thirdparty/nonstd/variant-lite"]
	path = thirdparty/nonstd/variant-lite
	url = https://github.com/martinmoene/variant-lite.git
[submodule "thirdparty/nonstd/optional-lite"]
	path = thirdparty/nonstd/optional-lite
	url = https://github.com/martinmoene/optional-lite.git
[submodule "thirdparty/nonstd/string-view-lite"]
	path = thirdparty/nonstd/string-view-lite
	url = https://github.com/martinmoene/string-view-lite.git
[submodule "thirdparty/fmtlib"]
	path = thirdparty/fmtlib
	url = https://github.com/fmtlib/fmt.git
[submodule "thirdparty/json/nlohmann"]
	path = thirdparty/json/nlohmann
	url = https://github.com/nlohmann/json.git
[submodule "thirdparty/json/rapid"]
	path = thirdparty/json/rapid
	url = https://github.com/Tencent/rapidjson.git

are excluded. But that means that the submodule sources don't get cloned when cloning the entire project! Indeed, the cloning of 1.2.1 does clone the submodules

git clone -b 1.2.1 --depth 1 --recurse-submodules --shallow-submodules https://github.com/jinja2cpp/Jinja2Cpp.git jinja-1.2.1

while that of 1.3.1

git clone -b 1.3.1 --depth 1 --recurse-submodules --shallow-submodules https://github.com/jinja2cpp/Jinja2Cpp.git jinja-1.2.1

does not. As the result jinja 1.3.1 is missing sources and can't be built.

I wonder if there is a reason of excluding the git submodules and if there is an updated instruction of 1.3.1 cloning.

Thank you

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants