From e7a7d60feb2575f5b9d1f582bce91ff48b9ab3df Mon Sep 17 00:00:00 2001 From: mcoury Date: Sat, 10 Dec 2022 18:08:35 -0800 Subject: [PATCH 1/7] Adding spdlog --- .gitmodules | 3 +++ dwave/preprocessing/include/dwave/presolve.h | 6 ++++++ extern/spdlog | 1 + setup.py | 1 + testscpp/Makefile | 7 +++++-- 5 files changed, 16 insertions(+), 2 deletions(-) create mode 160000 extern/spdlog diff --git a/.gitmodules b/.gitmodules index 51341cc..fceb099 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,3 +2,6 @@ path = testscpp/Catch2 url = https://github.com/catchorg/Catch2.git branch = v2.x +[submodule "extern/spdlog"] + path = extern/spdlog + url = https://github.com/gabime/spdlog.git diff --git a/dwave/preprocessing/include/dwave/presolve.h b/dwave/preprocessing/include/dwave/presolve.h index b49beac..c7ec64a 100644 --- a/dwave/preprocessing/include/dwave/presolve.h +++ b/dwave/preprocessing/include/dwave/presolve.h @@ -19,6 +19,12 @@ #include #include +<<<<<<< Updated upstream:dwave/preprocessing/include/dwave/presolve.h +======= +#include "spdlog/spdlog.h" +#include "taskflow/core/taskflow.hpp" +#include "taskflow/taskflow.hpp" +>>>>>>> Stashed changes:dwave/preprocessing/include/dwave/presolve.hpp #include "dimod/constrained_quadratic_model.h" namespace dwave { diff --git a/extern/spdlog b/extern/spdlog new file mode 160000 index 0000000..ff88b13 --- /dev/null +++ b/extern/spdlog @@ -0,0 +1 @@ +Subproject commit ff88b13c356935acf8e51d3799aa1a065dde40a2 diff --git a/setup.py b/setup.py index 1807c02..6fc933e 100644 --- a/setup.py +++ b/setup.py @@ -60,6 +60,7 @@ def build_extensions(self): include_dirs=[ numpy.get_include(), dimod.get_include(), + 'extern/spdlog/include/', ], install_requires=[ 'numpy>=1.20.0,<2.0.0', # keep synced with circle-ci, pyproject.toml diff --git a/testscpp/Makefile b/testscpp/Makefile index 5213ba2..5272d77 100644 --- a/testscpp/Makefile +++ b/testscpp/Makefile @@ -2,8 +2,11 @@ ROOT := ../ SRC := $(ROOT)/dwave/preprocessing/ CATCH2 := $(ROOT)/testscpp/Catch2/single_include/ DIMOD := $(shell python -c 'import dimod; print(dimod.get_include())') +SPDLOG := $(ROOT)/extern/spdlog/include/ +INCLUDES := -I $(SRC)/include/ -I $(DIMOD) -I $(CATCH2) -I $(TASKFLOW) -I $(SPDLOG) +FLAGS := -std=c++17 -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-deprecated-declarations -fcompare-debug-second -O3 -all: catch2 test_main test_main_parallel tests tests_parallel +all: update test_main test_main_parallel tests tests_parallel tests: test_main.out ./test_main @@ -19,6 +22,6 @@ test_main_parallel: test_main.cpp g++ -std=c++11 -fopenmp -Wall -c test_main.cpp -o test_main_parallel.o g++ -std=c++11 -fopenmp -Wall test_main_parallel.o tests/*.cpp -o test_main_parallel -I $(SRC)/include/ -I $(DIMOD) -I $(CATCH2) -catch2: +update: git submodule init git submodule update From 82611301701aa02ca7e57367bb20bcc2916084e3 Mon Sep 17 00:00:00 2001 From: mcoury Date: Sat, 10 Dec 2022 18:13:05 -0800 Subject: [PATCH 2/7] Renaming presolve.h -> presolve.hpp --- .../preprocessing/include/dwave/{presolve.h => presolve.hpp} | 5 ----- 1 file changed, 5 deletions(-) rename dwave/preprocessing/include/dwave/{presolve.h => presolve.hpp} (98%) diff --git a/dwave/preprocessing/include/dwave/presolve.h b/dwave/preprocessing/include/dwave/presolve.hpp similarity index 98% rename from dwave/preprocessing/include/dwave/presolve.h rename to dwave/preprocessing/include/dwave/presolve.hpp index c7ec64a..b242403 100644 --- a/dwave/preprocessing/include/dwave/presolve.h +++ b/dwave/preprocessing/include/dwave/presolve.hpp @@ -19,12 +19,7 @@ #include #include -<<<<<<< Updated upstream:dwave/preprocessing/include/dwave/presolve.h -======= #include "spdlog/spdlog.h" -#include "taskflow/core/taskflow.hpp" -#include "taskflow/taskflow.hpp" ->>>>>>> Stashed changes:dwave/preprocessing/include/dwave/presolve.hpp #include "dimod/constrained_quadratic_model.h" namespace dwave { From e3e5e43af7557cbac8ee22640a759b941af17314 Mon Sep 17 00:00:00 2001 From: mcoury Date: Sat, 10 Dec 2022 18:27:05 -0800 Subject: [PATCH 3/7] Getting build files working --- dwave/preprocessing/libcpp.pxd | 2 +- testscpp/Makefile | 12 ++++++------ testscpp/tests/test_presolve.cpp | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/dwave/preprocessing/libcpp.pxd b/dwave/preprocessing/libcpp.pxd index 25c9e0f..0807d97 100644 --- a/dwave/preprocessing/libcpp.pxd +++ b/dwave/preprocessing/libcpp.pxd @@ -19,7 +19,7 @@ from libcpp.vector cimport vector from dimod.libcpp cimport ConstrainedQuadraticModel -cdef extern from "dwave/presolve.h" namespace "dwave::presolve" nogil: +cdef extern from "dwave/presolve.hpp" namespace "dwave::presolve" nogil: cdef cppclass Postsolver[bias_type, index_type, assignment_type]: vector[T] apply[T](vector[T]) diff --git a/testscpp/Makefile b/testscpp/Makefile index 5272d77..bc7f547 100644 --- a/testscpp/Makefile +++ b/testscpp/Makefile @@ -1,9 +1,9 @@ -ROOT := ../ +ROOT := .. SRC := $(ROOT)/dwave/preprocessing/ CATCH2 := $(ROOT)/testscpp/Catch2/single_include/ DIMOD := $(shell python -c 'import dimod; print(dimod.get_include())') SPDLOG := $(ROOT)/extern/spdlog/include/ -INCLUDES := -I $(SRC)/include/ -I $(DIMOD) -I $(CATCH2) -I $(TASKFLOW) -I $(SPDLOG) +INCLUDES := -I $(SRC)/include/ -I $(DIMOD) -I $(CATCH2) -I $(SPDLOG) FLAGS := -std=c++17 -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-deprecated-declarations -fcompare-debug-second -O3 all: update test_main test_main_parallel tests tests_parallel @@ -15,12 +15,12 @@ tests_parallel: test_main_parallel.out ./test_main_parallel test_main: test_main.cpp - g++ -std=c++11 -Wall -c test_main.cpp - g++ -std=c++11 -Wall test_main.o tests/*.cpp -o test_main -I $(SRC)/include/ -I $(DIMOD) -I $(CATCH2) + g++ $(FLAGS) -c test_main.cpp + g++ $(FLAGS) test_main.o tests/*.cpp -o test_main $(INCLUDES) test_main_parallel: test_main.cpp - g++ -std=c++11 -fopenmp -Wall -c test_main.cpp -o test_main_parallel.o - g++ -std=c++11 -fopenmp -Wall test_main_parallel.o tests/*.cpp -o test_main_parallel -I $(SRC)/include/ -I $(DIMOD) -I $(CATCH2) + g++ $(FLAGS) -fopenmp -c test_main.cpp -o test_main_parallel.o + g++ $(FLAGS) -fopenmp test_main_parallel.o tests/*.cpp -o test_main_parallel $(INCLUDES) update: git submodule init diff --git a/testscpp/tests/test_presolve.cpp b/testscpp/tests/test_presolve.cpp index 84f9ca3..285dba4 100644 --- a/testscpp/tests/test_presolve.cpp +++ b/testscpp/tests/test_presolve.cpp @@ -14,7 +14,7 @@ #include "catch2/catch.hpp" #include "dimod/constrained_quadratic_model.h" -#include "dwave/presolve.h" +#include "dwave/presolve.hpp" namespace dwave { From 51dc579bcba59fe1eb2dd3240345e0090dab61d7 Mon Sep 17 00:00:00 2001 From: mcoury Date: Wed, 14 Dec 2022 13:31:14 -0800 Subject: [PATCH 4/7] Updating MANIFEST.in --- MANIFEST.in | 2 ++ 1 file changed, 2 insertions(+) diff --git a/MANIFEST.in b/MANIFEST.in index e7418e2..c3defa4 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,3 +1,5 @@ include pyproject.toml recursive-include dwave/preprocessing/include/ *.hpp *.h recursive-include dwave/preprocessing *.pyx *.pxd *.pyx.src +graft extern/spdlog/include/ +include extern/spdlog/LICENSE From a4e632237f9fdec1de6e51a80ed8934f8b07541f Mon Sep 17 00:00:00 2001 From: mcoury Date: Wed, 14 Dec 2022 13:37:23 -0800 Subject: [PATCH 5/7] Undoing renaming of presolve.hpp --- dwave/preprocessing/include/dwave/{presolve.hpp => presolve.h} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename dwave/preprocessing/include/dwave/{presolve.hpp => presolve.h} (100%) diff --git a/dwave/preprocessing/include/dwave/presolve.hpp b/dwave/preprocessing/include/dwave/presolve.h similarity index 100% rename from dwave/preprocessing/include/dwave/presolve.hpp rename to dwave/preprocessing/include/dwave/presolve.h From 5f6890afa68573759e8336054979dda7309f3a37 Mon Sep 17 00:00:00 2001 From: mcoury Date: Wed, 14 Dec 2022 13:43:46 -0800 Subject: [PATCH 6/7] Fixing compilation errors --- dwave/preprocessing/libcpp.pxd | 2 +- testscpp/tests/test_presolve.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dwave/preprocessing/libcpp.pxd b/dwave/preprocessing/libcpp.pxd index 0807d97..25c9e0f 100644 --- a/dwave/preprocessing/libcpp.pxd +++ b/dwave/preprocessing/libcpp.pxd @@ -19,7 +19,7 @@ from libcpp.vector cimport vector from dimod.libcpp cimport ConstrainedQuadraticModel -cdef extern from "dwave/presolve.hpp" namespace "dwave::presolve" nogil: +cdef extern from "dwave/presolve.h" namespace "dwave::presolve" nogil: cdef cppclass Postsolver[bias_type, index_type, assignment_type]: vector[T] apply[T](vector[T]) diff --git a/testscpp/tests/test_presolve.cpp b/testscpp/tests/test_presolve.cpp index 285dba4..84f9ca3 100644 --- a/testscpp/tests/test_presolve.cpp +++ b/testscpp/tests/test_presolve.cpp @@ -14,7 +14,7 @@ #include "catch2/catch.hpp" #include "dimod/constrained_quadratic_model.h" -#include "dwave/presolve.hpp" +#include "dwave/presolve.h" namespace dwave { From a5d4e137ccc119141af257fc8633732310a727ba Mon Sep 17 00:00:00 2001 From: mcoury Date: Mon, 19 Dec 2022 09:44:12 -0800 Subject: [PATCH 7/7] Checking out commit for v1.11.0 (ad0e89cbfb4d0c1ce4d097e134eb7be67baebb36) --- extern/spdlog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/spdlog b/extern/spdlog index ff88b13..ad0e89c 160000 --- a/extern/spdlog +++ b/extern/spdlog @@ -1 +1 @@ -Subproject commit ff88b13c356935acf8e51d3799aa1a065dde40a2 +Subproject commit ad0e89cbfb4d0c1ce4d097e134eb7be67baebb36