cea-hpc / robinhood

Robinhood Policy Engine : a versatile tool to monitor filesystem contents and schedule actions on filesystem entries.
http://robinhood.sf.net
Other
181 stars 62 forks source link

Update Project to be Rocky9.4 Compatible #142

Closed dubmarm closed 2 months ago

dubmarm commented 2 months ago

Robinhod was failing to build with Rocky9.4 for the following reasons

  1. Because spec.in has %post_un macros that were not compliant with the newer version of systemd_macros.

  2. Because the src/tests/test_confparam was failing to link resulting in an undefined function error for sm_attr_get.

    /usr/bin/ld: ../common/.libs/libcommontools.a(param_utils.o): in function `build_cmd':
    /tmp/robinhood/rpms/BUILD/robinhood-3.1.7/src/common/param_utils.c:464: undefined reference to `sm_attr_get'
    collect2: error: ld returned 1 exit status
  3. Because newer OSes/newer GCC require gettid() to not be used as a var name so that it doesn't clash with glibc.

  4. Because with lustre-2.15, IOC_MDC_GETFILEINFO_V1 is already declared in header file.

  5. Because mailx is not available on Rocky9 but s-nail is available on Centos7 and Rocky9.4

With these listed changes, robinhood can building on Rocky9.4 as well as older OS versions

tl-cea commented 2 months ago

Patches pushes for review/testing and landing in gerrithub : https://review.gerrithub.io/c/cea-hpc/robinhood/+/1200338 https://review.gerrithub.io/c/cea-hpc/robinhood/+/1200339 https://review.gerrithub.io/c/cea-hpc/robinhood/+/1200340 https://review.gerrithub.io/c/cea-hpc/robinhood/+/1200341

dubmarm commented 2 months ago

Thank you @tl-cea - it looks like the other patches were being worked throug, which makes me happy. From my understanding, only the mailx commit seems incorrect.