Closed z404 closed 2 years ago
A change had to be made in demo/demo_app.py
to account for the new build directories that the Makefile builds C shared libraries into.
The commands present in the Makefile are currently only for unix systems, and will not work on Windows systems. This would require additional modifications similar to what was done here, which could be done in a future issue.
A change in the .gitignore
file was made to exclude the /src/bin
file from the repository, as binaries do not need to be pushed onto the repository. Any user can build the binaries from source manually or by using the Makefile commands
Great job @z404, thanks for adding the makefile and making necessary changes
A Makefile was added to the root directory of this project. A Makefile helps in providing developers an easy to understand, concise, and uniform way to build a project. Makefiles can help compile source code into binaries, or create distributable packages, or even install from source.
This makefile contains 5 commands:
build_demo
: This command reads the demo directory specified byDEMODIR
, and compiles any golang file found into a C shared library file. The output.so
files will be named the same as the golang files, and stored in$(DEMODIR)/build
directory.build
: This command works just like the previous command. It reads the algorithm directory, and compiles any golang file found into a C shared library file. The output.so
files will be named the same as the golang files, and stored in$(BUILDOUTPUTDIR)
, which is currently set to/src/bin
.clear
: deletes all C shared libraries, header files, and any other files present in$(BUILDOUTPUTDIR)/
clearall
: deletes all C shared libraries, header files, and any other files present in$(BUILDOUTPUTDIR)/
and$(DEMODIR)/build/
dist
: This command is currently just a placeholder, and has not been implemented yet. It will be used to compile the python package into an installable wheel file once the package is configured and ready to be built.Closes #19