From 8a00c3713f441aadee2ed353ec1012f6aaf1499b Mon Sep 17 00:00:00 2001 From: aryan Date: Sun, 3 Jul 2022 05:01:26 -0700 Subject: [PATCH 1/5] preparing to merge to checkout with changed repositories --- .gitmodules | 9 ++++++--- mpir | 2 +- wxWidgets | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/.gitmodules b/.gitmodules index d7903af..d9869ef 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,9 +1,12 @@ [submodule "libsodium"] path = libsodium - url = cpal.pw:~/libsodium.git + url = git@rho.la:~/libsodium.git + branch = rho-fork [submodule "mpir"] path = mpir - url = cpal.pw:~/mpir.git + url = git@rho.la:~/mpir.git + branch = rho-fork [submodule "wxWidgets"] path = wxWidgets - url = cpal.pw:~/wxWidgets.git + url = git@rho.la:~/wxWidgets.git + branch = rho-fork diff --git a/mpir b/mpir index 20795fa..c7f9435 160000 --- a/mpir +++ b/mpir @@ -1 +1 @@ -Subproject commit 20795fa90044ea9adfc5a2e28c9a60d8e2eebcbd +Subproject commit c7f9435392ede4c7f2c887a44d7a9ca7d724f4dc diff --git a/wxWidgets b/wxWidgets index 270d386..a8e46b7 160000 --- a/wxWidgets +++ b/wxWidgets @@ -1 +1 @@ -Subproject commit 270d38601df59429710dda66832d8d91e3701296 +Subproject commit a8e46b7fdd0c3554bb4a55d729415c91c59d4cba From 262bcf3b36f714c602269b24d8faa41826e6d18e Mon Sep 17 00:00:00 2001 From: aryan Date: Mon, 4 Jul 2022 04:41:58 -0700 Subject: [PATCH 2/5] cmake options --- wxWidgets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wxWidgets b/wxWidgets index a8e46b7..a483b68 160000 --- a/wxWidgets +++ b/wxWidgets @@ -1 +1 @@ -Subproject commit a8e46b7fdd0c3554bb4a55d729415c91c59d4cba +Subproject commit a483b681a1b36cb519c0891c247238ae84148350 From b2b7efc77e4379bbe1fb0d5b0c39a6dd3ca775b2 Mon Sep 17 00:00:00 2001 From: aryan Date: Mon, 4 Jul 2022 15:03:31 -0700 Subject: [PATCH 3/5] integrating with upstream, when it broke mysteriously --- wxWidgets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wxWidgets b/wxWidgets index a8e46b7..a483b68 160000 --- a/wxWidgets +++ b/wxWidgets @@ -1 +1 @@ -Subproject commit a8e46b7fdd0c3554bb4a55d729415c91c59d4cba +Subproject commit a483b681a1b36cb519c0891c247238ae84148350 From 60cea2d85bc5a09c8b84d5e2e87cf3cdb48ec8ad Mon Sep 17 00:00:00 2001 From: aryan Date: Mon, 4 Jul 2022 15:16:28 -0700 Subject: [PATCH 4/5] still trying to synch remotes Now I see why multiple remotes are a pain --- wxWidgets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wxWidgets b/wxWidgets index a483b68..8880bc8 160000 --- a/wxWidgets +++ b/wxWidgets @@ -1 +1 @@ -Subproject commit a483b681a1b36cb519c0891c247238ae84148350 +Subproject commit 8880bc88ff6c2cfcd72c3fcd3ef532b5470b2103 From 48b81df8b138c381ffc23b491adf947bfe5b2556 Mon Sep 17 00:00:00 2001 From: aryan Date: Mon, 4 Jul 2022 22:07:25 -0700 Subject: [PATCH 5/5] wrapping up the failed cmake project --- docs/libraries.md | 49 ++++++++++++++++++++++++++++++++++++----------- 1 file changed, 38 insertions(+), 11 deletions(-) diff --git a/docs/libraries.md b/docs/libraries.md index 6636e93..ab22b9a 100644 --- a/docs/libraries.md +++ b/docs/libraries.md @@ -400,19 +400,46 @@ executed than in the past. ## The standard cmake installer from source -```bash -cmake .. && cmake --build && make && make install +After long and arduous struggle with CMake, I concluded: + +That it is the hardest path from MSVC to linux. + +That no one uses it as their first choice to go from linux to windows, so it +is likely to be a hard journey in the other direction. + +I also found that the CMake scripting language was one of those +accidental languages. + +CMakeLists.text was intended as a simple list of every file. And then one +feature after another was added, ad hoc, with no coherent plan and vision, +and eventurally so many features as to become Turing Complete, but like +most accidental turing complete languages, inconsistent, unpredictable, and +the code entirely opaque, and the whole way the developers did not +want their language to be used as a language. + +CMake has gone down the wrong path, should have started with a known +language whose first class types are strings, list of strings, maps of +strings, maps of named maps of strings, and maps of maps, and CMake should +create a description of the build environment that it discovers, and a +description of the directory in which it was run in the native types of that +language, and attempt to create a hellow world program in that language +that invokes the compiler and the linker. Which program the developer +modifies as needed. + +That MSVC's embrace of cmake is one of those embrace and extend +weirndesses, and will take you on a path to ever closer integration with +non free software, rather than off that path. Either that or the people +integrating it were just responding to an adhoc list of integration features. + +That attempting a CMake build of the project using MSVC was a bad idea. +MingGW first, then MingGW integrated into vscode, in an all choco windows +environment without MSVC present. + +```bat +choco install mingw pandoc git vscode gpg4win -y ``` -To support this on linux, Cmakelists.txt needs to contain - -```default -project (Test) -add_executable(test main.cpp) -install(TARGETS test) -``` - -On linux, `install(TARGETS test)` is equivalent to `install(TARGETS test DESTINATION bin)` +That Cmake does not really work all that well with the MSVC environment. If we eventually take the CMake path, it will be after wc and build on MingGW, not before. ## The standard Linux installer