Skip to main content

Community Bonding

Meeting 1

(May 28th, 2021)

This meeting is the first of the recurring weekly GSoC project meetings. In this meeting the current status of progress according to the proposal was discussed and some topics related to current build system based on Make and the new build system based on CMake.

Attendees

Discussions

  • The current progress according to schedule
    • The blog on CMake is on the way.
    • I have gone through the Makefiles to get a rough estimate of the work.
    • Published the GSoC project blog
  • How are agents related to each other in terms of compilation?
    • Each agent is independently compiled and generally use the source code in lib folder. If any agent needs other agent then it uses the library files instead.
  • Does every agent have a executable and library?
    • Not necessarily, there are agents written in C, C++ and PHP, depending on what is the use the configuration can be different.

Conclusion and Further Plans

  • It would be better if I get started by creating CMake configuration for any of the agent.
  • Fork and create a branch for development and mention the same in blog or wiki.
  • Add a timeline section in blog or wiki as provided in the project proposal.
  • Publish the CMake introductory blog.
  • Prepare a prototype/plan for next week.
  • Find out the best alternative for handling the global variables.

Meeting 2

(June 4th, 2021)

In this second meeting points over default Makefiles were discussed. Ninja can be used as an alternative for Makefiles.

Attendees

Discussions

  • What is the use of Makefile.deps and Makefile.process files?
    • Makefile.deps consists of many used and unused snippets. These snippets help setup the build and test environment for fossology. Since there are many directories that are hardcoded, special care is required while replacing this file.
    • Makefile.process generates a master variable from list of variables. It assists the script in Makefile.conf file. These files together generate a list of variables that can be used throughout the build process.
  • The build can be made faster using Ninja instead of Make.
  • Ninja supports parallel builds by default.
  • Print the flags used once the CMake configuration is working. That will help us debug the process.

Conclusion and Further Plans

  • Write a CMakeLists.txt for lib.
  • Push the working branch and update the link either on wiki or blog.