Jak to zrobić, aby cpack nie dodawał wymaganych bibliotek do RPM?

Próbuję przekonwertować nasz system kompilacji w trakcie pracy na cmake i napotkaliśmy interesujący problem z RPM-ami, które generuje (poprzez cpack): Automatycznie dodaje wszystkie zależności, które według twojego RPM ma do swojej listy wymaganych biblioteki.

Ogólnie rzecz biorąc, to świetnie, ale w moim przypadku jest to katastrofalne. Niestety, pakiety programistyczne, które budujemy, kończą się instalacją jednego z naszych własnych narzędzi, które używają rpm do zainstalowania ich w osobnej bazie RPM z systemu. To głupie, ale nie mogę tego zmienić. Oznacza to, że wszystkie biblioteki systemowe, na których opiera się normalna biblioteka (takie jak libc lub libpthread), nie znajdują się w bazie danych RPM, która jest używana z naszymi pakietami programistycznymi. Jeśli więc RPM dla jednego z naszych pakietów programistycznych zawiera listę bibliotek systemowych jako wymaganych, to nie możemy go zainstalować, ponieważ rpm pomyśli, że nie są one zainstalowane (ponieważ są wymienione w normalnej bazie danych, a nie w tej że ma być używany podczas instalowania naszych pakietów). Nasze obecne kompilacje radzą sobie z tym dobrze, ponieważ nie wymienia żadnych bibliotek systemowych jako zależności w RPMach, ale cpack automatycznie wypełnia listę wymaganych bibliotek RPM i umieszcza tam biblioteki systemowe. Potrzebuję sposobu, aby to powstrzymać.

Próbowałem ustawieniaCPACK_RPM_PACKAGE_REQUIRES do"", ale to nie ma żadnego skutku. Generator RPM cpack nadal generuje listę wymaganych bibliotek systemowych. W tym momencie mogę tylko pomyśleć o skopiowaniu generatora RPM cpack i włamaniu się do niego, aby zrobić to, co chcę, i użyć go zamiast standardowego, ale wolałbym tego uniknąć. Czy ktoś ma jakiś pomysł, w jaki sposób mogę uzyskać cpack, aby przestał zapełniać RPM wymaganymi bibliotekami?

questionAnswers(2)

yourAnswerToTheQuestion