당신이 배포에 대해 생각하고 있다면포스트그레SQL스포츠 토토 결과 모듈을 위한 휴대용 빌드 시스템을 설정하는 것은 상당히 어려울 수 있습니다. 그러므로포스트그레SQL설치는 스포츠 토토 결과을 위한 빌드 인프라를 제공합니다.PGXS, 이미 설치된 서버에 대해 간단한 스포츠 토토 결과 모듈을 간단히 구축할 수 있습니다.PGXS은 주로 C 코드를 포함하는 스포츠 토토 결과을 위한 것이지만 순수 SQL 스포츠 토토 결과에도 사용할 수 있습니다. 참고하세요PGXS다음과 인터페이스하는 모든 소프트웨어를 빌드하는 데 사용할 수 있는 범용 빌드 시스템 프레임워크가 아닙니다.PostgreSQL; 단순한 서버 스포츠 토토 결과 모듈에 대한 공통 빌드 규칙을 자동화할 뿐입니다. 더 복잡한 패키지의 경우 자체 빌드 시스템을 작성해야 할 수도 있습니다.
다음을 사용하려면PGXS스포츠 토토 결과을 위한 인프라를 구축하려면 간단한 makefile을 작성해야 합니다. makefile에서 일부 변수를 설정하고 전역 변수를 포함해야 합니다.PGXSmakefile. 다음은라는 스포츠 토토 결과 모듈을 빌드하는 예입니다.isbn_issn, 일부 C 코드, 스포츠 토토 결과 제어 파일, SQL 스크립트, 포함 파일(다른 모듈이 SQL을 통하지 않고 스포츠 토토 결과 기능에 액세스해야 하는 경우에만 필요함) 및 문서 텍스트 파일을 포함하는 공유 라이브러리로 구성됩니다.
모듈 = isbn_issn 스포츠 토토 결과 = isbn_issn 데이터 = isbn_issn--1.0.sql DOCS = README.isbn_issn HEADERS_isbn_issn = isbn_issn.h PG_CONFIG = pg_config PGXS := $(쉘 $(PG_CONFIG) --pgxs) $(PGXS) 포함
마지막 세 줄은 항상 동일해야 합니다. 파일 앞부분에서 변수를 할당하거나 사용자 정의를 추가합니다.만들다규칙.
빌드되는 항목을 지정하려면 다음 세 가지 변수 중 하나를 설정하십시오.
모듈동일한 줄기를 가진 소스 파일에서 빌드할 공유 라이브러리 개체 목록(이 목록에 라이브러리 접미사를 포함하지 않음)
MODULE_big여러 소스 파일에서 빌드하기 위한 공유 라이브러리(객체 파일 나열OBJS)
프로그램빌드할 실행 가능한 프로그램(객체 파일 나열OBJS)
다음 변수도 설정할 수 있습니다:
스포츠 토토 결과스포츠 토토 결과자 이름; 각 이름에 대해 다음을 제공해야 합니다.다음에 설치될 파일스포츠 토토 결과.control접두사/공유/스포츠 토토 결과
MODULEDIR하위 디렉토리DATA 및 DOCS 파일을 설치해야 하는 위치(설정되지 않은 경우 기본값은접두사/공유스포츠 토토 결과if스포츠 토토 결과설정되었거나기여그렇지 않은 경우)
데이터설치할 임의의 파일접두사/share/$MODULEDIR
DATA_build설치할 임의의 파일, 먼저 빌드해야 함접두사/share/$MODULEDIR
DATA_TSEARCH설치할 임의의 파일접두사/share/tsearch_data
문서아래에 설치할 임의 파일접두사/doc/$MODULEDIR
헤더HEADERS_build(선택적으로 빌드 및 설치할) 파일.접두사/include/서버/$MODULEDIR/$MODULE_big
달리DATA_build, 파일HEADERS_build다음에 의해 제거되지 않습니다.깨끗한대상; 제거하려면 다음에도 추가하세요.EXTRA_CLEAN또는 이를 수행하려면 자신만의 규칙을 추가하세요.
HEADERS_$MODULEHEADERS_build_$MODULE설치할 파일(지정된 경우 빌드 후), 여기서접두사/include/서버/$MODULEDIR/$MODULE$MODULE다음에서 사용되는 모듈 이름이어야 합니다.모듈또는MODULE_big.
달리DATA_build, 파일HEADERS_build_$MODULE다음에 의해 제거되지 않습니다.깨끗함목표; 제거하려면 다음에도 추가하세요.EXTRA_CLEAN또는 이를 수행하려면 자신만의 규칙을 추가하세요.
동일한 모듈에 대해 두 변수를 모두 사용하거나 두 개의 모듈 이름이 없는 한 어떤 조합으로든 사용할 수 있습니다.모듈접두사의 존재 여부만 다른 목록build_, 이는 모호함을 야기합니다. 그런 경우에는(아마도 그럴 가능성이 낮지만), 다음과 같은 경우에만 사용해야 합니다.HEADERS_build_$MODULE변수.
스크립트설치할 스크립트 파일(바이너리 아님)접두사/bin
SCRIPTS_build설치할 스크립트 파일(바이너리 아님), 먼저 빌드해야 함접두사/bin
회귀회귀 테스트 사례 목록(접미사 없음), 아래 참조
REGRESS_OPTS전달할 추가 스위치pg_regress
격리격리 테스트 사례 목록, 자세한 내용은 아래 참조
ISOLATION_OPTS전달할 추가 스위치pg_isolation_regress
TAP_TESTSTAP 테스트를 실행해야 하는지 정의하는 스위치, 아래 참조
NO_INSTALLCHECK정의하지 마세요설치확인대상, 예를 들어 테스트에 특별한 구성이 필요하거나 사용하지 않는 경우 유용함pg_regress
EXTRA_CLEAN제거할 추가 파일깨끗하게 만드세요
PG_CPPFLAGS앞에 추가됩니다CPPFLAGS
PG_CFLAGS다음에 추가됩니다CFLAGS
PG_CXXFLAGS다음에 추가됩니다CXXFLAGS
PG_LDFLAGS앞에 추가됩니다LDFLAGS
PG_LIBS다음에 추가됩니다프로그램링크 라인
SHLIB_LINK다음에 추가됩니다MODULE_big링크 라인
PG_CONFIG경로pg_config다음을 위한 프로그램PostgreSQL빌드 대상 설치(일반적으로 그냥pg_config첫 번째 것을 사용하려면경로)
이 메이크파일을 다음과 같이 넣으세요메이크파일당신의 스포츠 토토 결과 기능이 있는 디렉토리에. 그럼 할 수 있어만들다컴파일한 다음설치하기모듈을 설치합니다. 기본적으로 스포츠 토토 결과은 다음을 위해 컴파일되고 설치됩니다.PostgreSQL첫 번째에 해당하는 설치pg_config귀하의 프로그램에서 발견됨경로. 설정하여 다른 설치를 사용할 수 있습니다.PG_CONFIG그것을 가리킨다pg_config프로그램, makefile 내에서 또는만들다명령줄.
달릴 수도 있습니다만들다빌드 디렉토리를 별도로 유지하려는 경우 스포츠 토토 결과의 소스 트리 외부 디렉토리에 있습니다. 이 절차는 a라고도 합니다.VPATH빌드. 방법은 다음과 같습니다.
mkdir build_dir CD 빌드_디렉터리 make -f /path/to/extension/source/tree/Makefile make -f /path/to/extension/source/tree/Makefile 설치
또는 핵심 코드에 대해 수행되는 방법과 유사한 방식으로 VPATH 빌드에 대한 디렉토리를 설정할 수 있습니다. 이를 수행하는 한 가지 방법은 핵심 스크립트를 사용하는 것입니다.config/prep_buildtree. 이 작업이 완료되면 다음을 설정하여 빌드할 수 있습니다.만들다변수VPATH이렇게:
VPATH=/path/to/extension/source/tree 만들기 VPATH=/path/to/extension/source/tree install을 만드세요
이 절차는 다양한 디렉토리 레이아웃에서 작동할 수 있습니다.
다음에 나열된 스크립트는회귀변수는 다음으로 호출할 수 있는 모듈의 회귀 테스트에 사용됩니다.설치 확인 수행하고 난 후설치하기. 이것이 작동하려면 실행이 필요합니다.포스트그레SQL서버. 에 나열된 스크립트 파일회귀다음 이름의 하위 디렉토리에 나타나야 합니다.sql/스포츠 토토 결과 프로그램 디렉토리에 있습니다. 이 파일에는 스포츠 토토 결과자가 있어야 합니다..sql, 이는에 포함되어서는 안 됩니다.회귀메이크파일에 나열하세요. 각 테스트마다 이름이 지정된 하위 디렉터리에 예상 출력이 포함된 파일도 있어야 합니다.예상됨/, 어간과 스포츠 토토 결과자가 동일함.out. 설치 확인 수행다음을 사용하여 각 테스트 스크립트를 실행합니다.psql, 결과 출력을 일치하는 예상 파일과 비교합니다. 차이점이 있으면 파일에 기록됩니다.regression.diffs에diff -c형식. 예상 파일이 누락된 테스트를 실행하려고 하면 다음과 같이 보고됩니다.“문제”, 예상되는 파일이 모두 있는지 확인하세요.
다음에 나열된 스크립트는격리변수는 다음으로 호출할 수 있는 모듈과의 동시 세션 동작을 강조하는 테스트에 사용됩니다.설치 확인 수행하고 난 후설치하기. 이것이 작동하려면 실행이 필요합니다.PostgreSQL서버. 에 나열된 스크립트 파일격리다음 이름의 하위 디렉토리에 나타나야 합니다.사양/스포츠 토토 결과 프로그램 디렉토리에 있습니다. 이 파일에는 스포츠 토토 결과자가 있어야 합니다..spec, 에 포함되어서는 안 됩니다.격리메이크파일에 나열하세요. 각 테스트마다 이름이 지정된 하위 디렉터리에 예상 출력이 포함된 파일도 있어야 합니다.예상됨/, 줄기와 스포츠 토토 결과자가 동일함.out. 설치 확인 수행각 테스트 스크립트를 실행하고 결과 출력을 일치하는 예상 파일과 비교합니다. 차이점이 있으면 파일에 기록됩니다.output_iso/regression.diffsindiff -c형식. 예상 파일이 누락된 테스트를 실행하려고 하면 다음과 같이 보고됩니다.“문제”, 예상되는 파일이 모두 있는지 확인하세요.
TAP_TESTSTAP 테스트 사용을 활성화합니다. 각 실행의 데이터는라는 하위 디렉터리에 있습니다.tmp_check/. 또한 참조하세요PostgreSQL : 문서 : 12 : 32.4. 탭 토토 사이트 추천자세한 내용은.
예상 파일을 생성하는 가장 쉬운 방법은 빈 파일을 생성한 다음 테스트 실행을 수행하는 것입니다(물론 차이점이 보고됩니다). 에서 발견된 실제 결과 파일을 검사합니다.결과/디렉토리(테스트용회귀) 또는output_iso/결과/디렉토리(테스트용격리), 그런 다음 복사하여예상됨/테스트에서 기대한 것과 일치하는 경우.