Compare commits

...

2 Commits

Author SHA1 Message Date
b0351c9323 update 2024-06-28 16:58:11 +08:00
70c7ffca83 update 2024-06-28 16:58:02 +08:00
5 changed files with 17 additions and 11 deletions

3
.gitmodules vendored
View File

@ -1,3 +1,6 @@
[submodule "pybind11"]
path = pybind11
url = https://git.zziyu.cn/Zengtudor/pybind11.git
[submodule "glfw"]
path = glfw
url = https://git.zziyu.cn/Zengtudor/glfw.git

View File

@ -4,4 +4,10 @@ project(test_pybind11 VERSION 1.0 DESCRIPTION "a default project" LANGUAGES CXX)
file(GLOB_RECURSE SRC src/*.cpp)
find_package(Python 3.12.3 COMPONENTS Interpreter Development REQUIRED)
find_package(pybind11 CONFIG REQUIRED)
pybind11_add_module(${PROJECT_NAME} ${SRC})
add_subdirectory(glfw)
target_link_libraries(${PROJECT_NAME} PRIVATE glfw)
find_package(OpenGl REQUIRED)
target_link_libraries(${PROJECT_NAME} PRIVATE OpenGL::GL)

1
glfw Submodule

@ -0,0 +1 @@
Subproject commit b35641f4a3c62aa86a0b3c983d163bc0fe36026d

View File

@ -8,6 +8,10 @@ from pymake import *
.file("SRC",glob_recurse,"src/*.cpp")
.just_add("""find_package(Python 3.12.3 COMPONENTS Interpreter Development REQUIRED)""")
.just_add("find_package(pybind11 CONFIG REQUIRED)")
.add_subdirectory("glfw")
.target_link_libraries(var(project_name),"glfw")
.find_package("OpenGl")
.target_link_libraries(var(project_name),"OpenGL::GL")
.pybind11_add_module(var(project_name),var("SRC"))
.write()
)

View File

@ -1,17 +1,9 @@
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>
#include <GLFW/glfw3.h>
int add(int i, int j) {
return i + j;
}
std::vector<int> sort_num(std::vector<int> array){
std::sort(array.begin(),array.end());
return array;
}
PYBIND11_MODULE(test_pybind11, m) {
m.doc() = "pybind11 example plugin"; // optional module docstring
m.def("sort_num",&sort_num,"A function to sort INT numbers");
m.def("add", &add, "A function that adds two numbers");
m.doc() = "glpy a python opengl project"; // optional module docstring
}