diff --git a/README.md b/README.md index 2000c36..6121be7 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ -# amscpptemplate25a +# amscppperm1 -Rearrange my C++ project template in an attempt to harmonize everything and modernize my build scripts. \ No newline at end of file +Library containing structures to iterate over permutations and provide permutation sign. \ No newline at end of file diff --git a/amscppperm1.code-workspace b/amscppperm1.code-workspace new file mode 100644 index 0000000..057f439 --- /dev/null +++ b/amscppperm1.code-workspace @@ -0,0 +1,16 @@ +{ + "folders": [ + { + "path": "." + }, + { + "path": "../../sourceprojs23/camsimglib3" + }, + { + "path": "../../sourceprojs23/amsmathutil2" + }, + { + "path": "../../sourceprojs23/amscppfilesys3" + } + ] +} \ No newline at end of file diff --git a/backup.sh b/backup.sh index d74f2db..0af9a39 100644 --- a/backup.sh +++ b/backup.sh @@ -1,5 +1,5 @@ #!/usr/bin/bash -tar -czvf ../amscpptemplate25a.tar.gz ./* +tar -czvf ../amscppperm1.tar.gz ./* -scp ../amscpptemplate25a.tar.gz aschinder@amssolarempire.com:~/workspace/projects +scp ../amscppperm1.tar.gz aschinder@amssolarempire.com:~/workspace/projects diff --git a/build/__pycache__/amsbuildlib4.cpython-310.pyc b/build/__pycache__/amsbuildlib4.cpython-310.pyc index 0c8efe6..c12ef93 100644 Binary files a/build/__pycache__/amsbuildlib4.cpython-310.pyc and b/build/__pycache__/amsbuildlib4.cpython-310.pyc differ diff --git a/build/make.linux64.lib.py b/build/make.linux64.lib.py index f237088..a03d2e4 100644 --- a/build/make.linux64.lib.py +++ b/build/make.linux64.lib.py @@ -7,25 +7,24 @@ from shutil import copytree from amsbuildlib4 import * -libname = "amscpptemplate25a.linux64" #static library name to generate +libname = "amscppperm1.linux64" #static library name to generate binname = "tests" #create this executable when compiling main.c or main.cpp commondir = "../../linux64" #common directory to pul libraries and includes from -depdir = "./dependencies/linux64" #local pre-compiled dependency libraries and their includes installdir = "../../linux64" #directory to install to when finished builddir = "./build_linux64" -doinstall = False #copies the build_output to the install dir when finished +doinstall = True #copies the build_output to the install dir when finished cc = "g++" #compiler cflags = "-fPIC" libraries = "-l{}".format(libname) -libdirs = "-L{} -L{}/lib -L{}/lib".format(builddir,commondir,depdir) +libdirs = "-L{} -L{}/lib".format(builddir,commondir) linkerflags = "-static -static-libgcc -Wl,-rpath=." srcexts = [".c",".cpp"] binsrc = ["main.c","main.cpp"] #ignore these files when compiling the static library #keyword list to control the compilers/linkers kwargs = dict() -include = "-I./include -I{}/include -I{}/include".format(commondir, depdir) +include = "-I./include -I{}/include".format(commondir) kwargs["include"] = include kwargs["flags"] = cflags kwargs["libdir"] = libdirs @@ -51,7 +50,7 @@ if(doinstall): #Copy a binary to the common bin folder #Push any libraries to the common lib folder - shutil.copy('{}/lib/lib{}.a'.format(builddir,libname),commondir) + shutil.copy('{}/lib{}.a'.format(builddir,libname),"{}/lib".format(commondir)) #Copy include files to the common include folder copytree('./include/',commondir+'/include/',dirs_exist_ok=True) diff --git a/build/make.linux64.test.py b/build/make.linux64.test.py index 17e6f87..1d241d3 100644 --- a/build/make.linux64.test.py +++ b/build/make.linux64.test.py @@ -7,25 +7,24 @@ from shutil import copytree from amsbuildlib4 import * -libname = "amscpptemplate25a.linux64" #static library name to generate +libname = "amscppperm1.linux64" #static library name to generate binname = "tests" #create this executable when compiling main.c or main.cpp commondir = "../../linux64" #common directory to pul libraries and includes from -depdir = "./dependencies/linux64" #local pre-compiled dependency libraries and their includes installdir = "../../linux64" #directory to install to when finished builddir = "./build_linux64" -doinstall = False #copies the build_output to the install dir when finished +doinstall = True #copies the build_output to the install dir when finished cc = "g++" #compiler cflags = "-fPIC" libraries = "-l{}".format(libname) -libdirs = "-L{} -L{}/lib -L{}/lib".format(builddir,commondir,depdir) +libdirs = "-L{} -L{}/lib".format(builddir,commondir) linkerflags = "-static -static-libgcc -Wl,-rpath=." srcexts = [".c",".cpp"] binsrc = ["main.c","main.cpp"] #ignore these files when compiling the static library #keyword list to control the compilers/linkers kwargs = dict() -include = "-I./include -I{}/include -I{}/include".format(commondir, depdir) +include = "-I./include -I{}/include".format(commondir) kwargs["include"] = include kwargs["flags"] = cflags kwargs["libdir"] = libdirs diff --git a/build/make.mingw64.lib.py b/build/make.mingw64.lib.py index a62b9e4..a318507 100644 --- a/build/make.mingw64.lib.py +++ b/build/make.mingw64.lib.py @@ -7,7 +7,7 @@ from shutil import copytree from amsbuildlib4 import * -libname = "amscpptemplate25a.mingw64" #static library name to generate +libname = "amscppperm1.mingw64" #static library name to generate binname = "tests" #create this executable when compiling main.c or main.cpp commondir = "../../winx64" #common directory to pul libraries and includes from depdir = "./dependencies/winx64" #local pre-compiled dependency libraries and their includes diff --git a/build/make.mingw64.test.py b/build/make.mingw64.test.py index 65a86cb..d43bdd3 100644 --- a/build/make.mingw64.test.py +++ b/build/make.mingw64.test.py @@ -7,7 +7,7 @@ from shutil import copytree from amsbuildlib4 import * -libname = "amscpptemplate25a.mingw64" #static library name to generate +libname = "amscppperm1.mingw64" #static library name to generate binname = "tests" #create this executable when compiling main.c or main.cpp commondir = "../../winx64" #common directory to pul libraries and includes from depdir = "./dependencies/winx64" #local pre-compiled dependency libraries and their includes diff --git a/build/make.msvc64.lib.py b/build/make.msvc64.lib.py index 5e5cab2..e2ef009 100644 --- a/build/make.msvc64.lib.py +++ b/build/make.msvc64.lib.py @@ -7,7 +7,7 @@ from shutil import copytree from amsbuildlib4 import * -libname = "amscpptemplate25a.msvc64" #static library name to generate +libname = "amscppperm1.msvc64" #static library name to generate binname = "tests" #create this executable when compiling main.c or main.cpp commondir = "../../winx64" #common directory to pul libraries and includes from depdir = "./dependencies/winx64" #local pre-compiled dependency libraries and their includes diff --git a/build/make.msvc64.test.py b/build/make.msvc64.test.py index cfc32ea..a7a3f7f 100644 --- a/build/make.msvc64.test.py +++ b/build/make.msvc64.test.py @@ -7,7 +7,7 @@ from shutil import copytree from amsbuildlib4 import * -libname = "amscpptemplate25a.msvc64" #static library name to generate +libname = "amscppperm1.msvc64" #static library name to generate binname = "tests.exe" #create this executable when compiling main.c or main.cpp commondir = "../../winx64" #common directory to pul libraries and includes from depdir = "./dependencies/winx64" #local pre-compiled dependency libraries and their includes diff --git a/build_linux64/libamscppperm1.linux64.a b/build_linux64/libamscppperm1.linux64.a new file mode 100644 index 0000000..a5d1701 Binary files /dev/null and b/build_linux64/libamscppperm1.linux64.a differ diff --git a/build_linux64/libamscpptemplate25a.linux64.a b/build_linux64/libamscpptemplate25a.linux64.a deleted file mode 100644 index 6eeb3e4..0000000 Binary files a/build_linux64/libamscpptemplate25a.linux64.a and /dev/null differ diff --git a/build_linux64/objstore/amscppperm1.o b/build_linux64/objstore/amscppperm1.o new file mode 100644 index 0000000..8b837b5 Binary files /dev/null and b/build_linux64/objstore/amscppperm1.o differ diff --git a/build_linux64/objstore/amscpptemplate25a_src2.o b/build_linux64/objstore/amscpptemplate25a_src2.o deleted file mode 100644 index 225c80d..0000000 Binary files a/build_linux64/objstore/amscpptemplate25a_src2.o and /dev/null differ diff --git a/build_linux64/objstore/amscpptemplate25a_template.o b/build_linux64/objstore/amscpptemplate25a_template.o deleted file mode 100644 index 0e66a26..0000000 Binary files a/build_linux64/objstore/amscpptemplate25a_template.o and /dev/null differ diff --git a/build_linux64/objstore/permutation.o b/build_linux64/objstore/permutation.o new file mode 100644 index 0000000..83ba333 Binary files /dev/null and b/build_linux64/objstore/permutation.o differ diff --git a/build_linux64/tests b/build_linux64/tests index d59b823..d0c2f0e 100644 Binary files a/build_linux64/tests and b/build_linux64/tests differ diff --git a/build_mingw64/libamscpptemplate25a.mingw64.a b/build_mingw64/libamscpptemplate25a.mingw64.a deleted file mode 100644 index 883fba5..0000000 Binary files a/build_mingw64/libamscpptemplate25a.mingw64.a and /dev/null differ diff --git a/build_mingw64/objstore/amscpptemplate25a_src2.o b/build_mingw64/objstore/amscpptemplate25a_src2.o deleted file mode 100644 index aa63256..0000000 Binary files a/build_mingw64/objstore/amscpptemplate25a_src2.o and /dev/null differ diff --git a/build_mingw64/objstore/amscpptemplate25a_template.o b/build_mingw64/objstore/amscpptemplate25a_template.o deleted file mode 100644 index fc64bdd..0000000 Binary files a/build_mingw64/objstore/amscpptemplate25a_template.o and /dev/null differ diff --git a/build_mingw64/tests.exe b/build_mingw64/tests.exe deleted file mode 100644 index 8b73f87..0000000 Binary files a/build_mingw64/tests.exe and /dev/null differ diff --git a/build_msvc64/libamscpptemplate25a.msvc64.lib b/build_msvc64/libamscpptemplate25a.msvc64.lib deleted file mode 100644 index 50dea21..0000000 Binary files a/build_msvc64/libamscpptemplate25a.msvc64.lib and /dev/null differ diff --git a/build_msvc64/objstore/amscpptemplate25a_src2.obj b/build_msvc64/objstore/amscpptemplate25a_src2.obj deleted file mode 100644 index 1e8b96c..0000000 Binary files a/build_msvc64/objstore/amscpptemplate25a_src2.obj and /dev/null differ diff --git a/build_msvc64/objstore/amscpptemplate25a_template.obj b/build_msvc64/objstore/amscpptemplate25a_template.obj deleted file mode 100644 index c0f1f14..0000000 Binary files a/build_msvc64/objstore/amscpptemplate25a_template.obj and /dev/null differ diff --git a/build_msvc64/tests b/build_msvc64/tests deleted file mode 100644 index 30a95cb..0000000 Binary files a/build_msvc64/tests and /dev/null differ diff --git a/build_msvc64/tests.exe b/build_msvc64/tests.exe deleted file mode 100644 index 305af36..0000000 Binary files a/build_msvc64/tests.exe and /dev/null differ diff --git a/include/amscppperm1/amscppperm1.hpp b/include/amscppperm1/amscppperm1.hpp new file mode 100644 index 0000000..4ed5ee9 --- /dev/null +++ b/include/amscppperm1/amscppperm1.hpp @@ -0,0 +1,31 @@ +#ifndef __AMSCPPPERM1_HPP__ +#define __AMSCPPPERM1_HPP__ + +#include +#include +#include + + +namespace ams +{ +namespace perm +{ + +//Buffer operations + + +//Permutation class +class permutation +{ +public: + int dim; + int *data; + + permutation(); + ~permutation(); +}; + +}; //end namespace perm +}; //end namespace ams + +#endif \ No newline at end of file diff --git a/include/amscpptemplate25a/amscpptemplate25a.hpp b/include/amscpptemplate25a/amscpptemplate25a.hpp deleted file mode 100644 index 12b000f..0000000 --- a/include/amscpptemplate25a/amscpptemplate25a.hpp +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef __AMSCPPTEMPLATE25A_HPP__ -#define __AMSCPPTEMPLATE25A_HPP__ - -#include -#include -#include - - -namespace ams -{ - void amscpptemplate_testfn(); - void amscpptemplate_testfn2(); -}; - -#endif \ No newline at end of file diff --git a/make_msvc.py b/make_msvc.py index 7e3a1a1..64c47aa 100644 --- a/make_msvc.py +++ b/make_msvc.py @@ -6,7 +6,7 @@ from build.amsbuildlib4 import * if(len(sys.argv)>=2): if(sys.argv[1]=="clean"): - obj_list = flist('./build_msvc64',recurse=True,exts=['.o']) + obj_list = flist('./build_msvc64',recurse=True,exts=['.o','.obj']) for o in obj_list: os.remove('{}'.format(o)) exit() diff --git a/pull.sh b/pull.sh index 6743d79..3888764 100644 --- a/pull.sh +++ b/pull.sh @@ -1,4 +1,4 @@ #!/usr/bin/bash -scp aschinder@amssolarempire.com:workspace/projects/amscpptemplate25a.tar.gz ../ -tar xzvf ../amscpptemplate25a.tar.gz ./ +scp aschinder@amssolarempire.com:workspace/projects/amscppperm1.tar.gz ../ +tar xzvf ../amscppperm1.tar.gz ./ diff --git a/src/amscppperm1/amscppperm1.cpp b/src/amscppperm1/amscppperm1.cpp new file mode 100644 index 0000000..5368383 --- /dev/null +++ b/src/amscppperm1/amscppperm1.cpp @@ -0,0 +1,9 @@ +#include + +namespace ams +{ +namespace perm +{ + +}; //end namespace perm +}; //end namespace ams \ No newline at end of file diff --git a/src/amscppperm1/permutation.cpp b/src/amscppperm1/permutation.cpp new file mode 100644 index 0000000..f23d40d --- /dev/null +++ b/src/amscppperm1/permutation.cpp @@ -0,0 +1,25 @@ +#include + +namespace ams +{ +namespace perm +{ + + permutation::permutation() + { + dim = 0; + data = NULL; + return; + } + + permutation::~permutation() + { + if(data!=NULL) {delete[] data; data = NULL;} + dim = 0; + + return; + } + + +}; //end namespace perm +}; //end namespace ams \ No newline at end of file diff --git a/src/amscpptemplate25a/amscpptemplate25a_src2.cpp b/src/amscpptemplate25a/amscpptemplate25a_src2.cpp deleted file mode 100644 index ec8fc28..0000000 --- a/src/amscpptemplate25a/amscpptemplate25a_src2.cpp +++ /dev/null @@ -1,12 +0,0 @@ -#include - -namespace ams -{ - -void amscpptemplate_testfn2() -{ - printf("Test function 2.\n"); - return; -} - -}; \ No newline at end of file diff --git a/src/amscpptemplate25a/amscpptemplate25a_template.cpp b/src/amscpptemplate25a/amscpptemplate25a_template.cpp deleted file mode 100644 index aa55a16..0000000 --- a/src/amscpptemplate25a/amscpptemplate25a_template.cpp +++ /dev/null @@ -1,12 +0,0 @@ -#include - -namespace ams -{ - -void amscpptemplate_testfn() -{ - printf("Test function.\n"); - return; -} - -}; \ No newline at end of file diff --git a/src/main.cpp b/src/main.cpp index 0d90d74..48f6db0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,9 +1,9 @@ -#include +#include int main(int argc, char* argv[]) { int ret = 0; printf("ams c++ project template tests.\n"); - ams::amscpptemplate_testfn(); + return ret; } \ No newline at end of file