mirror of
https://github.com/avinal/avinal.github.io.git
synced 2026-07-04 07:40:09 +05:30
62efd95607
Signed-off-by: Avinal Kumar <avinal.xlvii@gmail.com> rh-pre-commit.version: 2.3.2 rh-pre-commit.check-secrets: ENABLED
84 lines
3.3 KiB
Markdown
84 lines
3.3 KiB
Markdown
---
|
|
category: gsoc
|
|
date: 2021-06-29T23:22:00
|
|
description: In this seventh meeting question related to installing the FOSSology
|
|
were discussed.
|
|
image: /images/tech-wallpaper-6.webp
|
|
tags:
|
|
- gsoc
|
|
- FOSSology
|
|
title: Coding Week 4 Meeting-1
|
|
---
|
|
|
|
In this seventh meeting question related to installing the FOSSology were discussed.
|
|
|
|
## Week 4 Progress
|
|
|
|
> CMake configuration files have been refactored to make each agent as a separate sub-project.
|
|
>
|
|
> - Symbolic links are installing.
|
|
> - VERSION files can be generated now during configure step
|
|
> - To test the current progress, follow the instructions [here](https://github.com/avinal/FOSSology/wiki#test-the-new-system-only-gcc-with-make-and-ninja-tested-for-now)
|
|
|
|
## Discussions
|
|
|
|
- **There are two types of replacements CMake can configure file with.**
|
|
`@VARIABLE@` **and** `${VARIABLE}` **. Since in PHP** `$variable` **is
|
|
used, it may create problem for CMake replacements. So may I replace
|
|
them?**
|
|
- Yeah sure, go ahead. It will be more robust.
|
|
- The replacement of `$VARIABLE` can be stopped by using `@ONLY`
|
|
option in `configure_file(...)` command.
|
|
- **How to generate vendor directory?**
|
|
- The code for generating vendor directory is in `src/Makefile`.
|
|
- Before executing code for the generation, make sure to copy
|
|
`composer.json` and `composer.lock` to the target directory.
|
|
- There is also a patch that FOSSology needs to function as intended.
|
|
Make sure to run that patch to check and apply.
|
|
- For now, we generate *vendor* while building, but it would be nice
|
|
if it can be generated in the build step.
|
|
- **Currently I am generating the VERSION file in configure step itself.
|
|
Should I move it to the build or install step?**
|
|
- Yeah, please move it to the build step. As in configure step the
|
|
data might be outdated.
|
|
- **Is there any configuration for Release that we can use to install or
|
|
test?** *(Michael)*
|
|
- Yeah, there are 4 inbuilt configurations for various levels of
|
|
optimization and can be applied to tests and installation.
|
|
- **Is the VERSION file is generated for each agent or whole project at
|
|
once? Because in the latter case, the VERSION file can be generated as
|
|
the last step.**
|
|
- No agent has a VERSION file along with the main VERSION file for
|
|
FOSSology.
|
|
- **How I can build and install a single agent or component?**
|
|
- There are two ways you can build and install a specific agent or
|
|
component only.
|
|
|
|
- The first one is quite simple. Just change your directory to the
|
|
specific agent's directory and run all the usual commands for
|
|
building and installing.
|
|
|
|
- The second one is a bit for typing work. This can be used directly
|
|
from the top-level directory. After configuring the CMake, you can
|
|
run the following command to install the specific component.
|
|
|
|
``` bash
|
|
# for Unix Makefiles
|
|
make list_install_component # this will list all the available components
|
|
cmake -DCOMPONENT=<component-name> -P cmake_install.cmake
|
|
```
|
|
|
|
- I am writing a macro that will let us install a component by simply
|
|
running `make install component`.
|
|
|
|
## Conclusion and Further Plans
|
|
|
|
- Implement generation of vendor directory.
|
|
- Move VERSION file generation to build step.
|
|
|
|
## Attendees
|
|
|
|
- [Michael C. Jaeger](https://github.com/mcjaeger)
|
|
- [Gaurav Mishra](https://github.com/GMishx)
|
|
- [Avinal Kumar](https://github.com/avinal)
|