5.2. 매크로에 대한 추가 정보
이 섹션에서는 선택한 내장 RPM 매크로에 대해 설명합니다.
5.2.1. 자체 매크로 정의 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
다음 섹션에서는 사용자 지정 매크로를 만드는 방법을 설명합니다.
절차
RPM
사양파일에 다음 행을 포함합니다.%global <name>[(opts)] <body>
<body> 주변의 모든 공백이 제거됩니다. 이름은 영숫자로 구성될 수 있으며 문자 _ 문자는 3자 이상이어야 합니다. (opts) 필드를 포함하는 것은 선택 사항입니다.
-
간단한매크로에는(opts)필드가 포함되어 있지 않습니다. 이 경우 재귀적 매크로 확장만 수행됩니다. -
Parametrized매크로에는(opts)필드가 포함되어 있습니다. 괄호 사이에선택문자열은 매크로 호출 시작 시argc/argv처리를 위해getopt(3)에 전달됩니다.
참고
이전 RPM 사양 파일은 대신 %define <name> <body > 매크로 패턴을 사용합니다. %define 과 %global 매크로의 차이점은 다음과 같습니다.
-
%define에는 지역 범위가 있습니다. 이는사양파일의 특정 부분에 적용됩니다.%define매크로의 본문은 사용 시 확장됩니다. -
%global에는 전역 범위가 있습니다. 이는 전체사양파일에 적용됩니다.%global매크로의 본문은 정의 시 확장됩니다.
중요
매크로는 주석 처리되거나 매크로의 이름이 사양 파일의 %changelog 섹션에 지정되더라도 평가됩니다. 매크로를 주석 처리하려면 %% 를 사용합니다. 예: %%global.