-
Notifications
You must be signed in to change notification settings - Fork 446
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(buildsystem): add CMake Buildsytem #2075
Conversation
65f1576
to
3237508
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Few suggestions and comments.
Hello @NicolasToussaint, I did the changes in the |
9377629
to
f66b889
Compare
This pull request has conflicts, please rebase with master to resolve those before we can evaluate the pull request. |
ca9265e
to
dddb399
Compare
1d0593e
to
1364b30
Compare
I will be making some changes in a few days and then it will be ready for review. I apologize for the delay, got caught in placements and all. 😅 |
This pull request has conflicts, please rebase with master to resolve those before we can evaluate the pull request. |
b5244fd
to
dcf375a
Compare
4e6cbbc
to
8234402
Compare
This pull request has conflicts, please rebase with master to resolve those before we can evaluate the pull request. |
3b7c79a
to
6db1be6
Compare
154e2df
to
a6dae34
Compare
This pull request has conflicts, please rebase with master to resolve those before we can evaluate the pull request. |
a6dae34
to
35ad9ea
Compare
35ad9ea
to
2a42f02
Compare
This pull request has conflicts, please rebase with master to resolve those before we can evaluate the pull request. |
2a42f02
to
f913eed
Compare
daebde3
to
607b353
Compare
This pull request has conflicts, please rebase with master to resolve those before we can evaluate the pull request. |
- Add CMake Build Configuration for all agents - Add CMake Install Configuration for all agents - source generating scripts are moved to seperate folders i.e monk/generator nomos/generator - vendor is produced under genvendor - CMake addition modules added - version.php.in substitution changed to cmake standards - shell scripts updated to latest standards - substitution rules changed in generated files - add initial packaging config - refactor debian folder - add CMake testing configuration - add support for running only few agents at a time - refactored test source for new configuration - both unit tests and functional test config added - fix shell scripts - add GitHub Actions CI - added build, install, test and package configs - fixed implicit include error in ojo - Added logic for including changelogs, README and copyright to packages - Minimum cmake 3.19 required for packaging, packaging config not generated below this version - Update Minimum CMake version to 3.13 - Move all cmake related files to cmake directory Signed-off-by: Avinal Kumar <avinal.xlvii@gmail.com> Signed-off-by: Gaurav Mishra <mishra.gaurav@siemens.com> !squish me Signed-off-by: Gaurav Mishra <mishra.gaurav@siemens.com>
Signed-off-by: Gaurav Mishra <mishra.gaurav@siemens.com>
607b353
to
14f8ea3
Compare
Finally 😍 |
Description
This pull request adds a new build system based on CMake to this project. This is a big upgrade over decade-old Makefiles. With the new build system, we will be able to build/install/package FOSSology faster and support for many platforms and another build system.
Changes
How to test
-DOFFLINE=ON
- stops vendor generation-DAGENTS="agent1;agent2;...;<agent>"
- only configure these agents-DTESTING=ON
- enables configuring for tests-DCMAKE_INSTALL_PREFIX=<path>
- changes install prefix for the project-DMONOPACK=ON
- ununpack and adj2nest are packaged seperately-GNinja
- uses Ninja Generator instead of Unix Makefiles-DCMAKE_BUILD_TYPE=<build-type>
- choose fromDebug
,Release
,RelWithDebInfo
,MinSizeRel
sudo
before the commandsfossy
user before running testsKnown Bugs/Issue
make
symbolic links in the packages are accompanied with dereferenced targets too, preferninja
for packagingIssues to create before merge
-DCMAKE_INSTALL_PREFIX:PATH="/usr" -DFO_SYSCONFDIR:PATH="/etc/fossology"
before packaging to fix paths.For More Information please see the blog: https://gsoc.avinal.space and wiki
Signed-off-by: Avinal Kumar avinal.xlvii@gmail.com