1 # SPEC file for pg_hint_plan
2 # Copyright(C) 2012-2017 NIPPON TELEGRAPH AND TELEPHONE CORPORATION
4 %define _pgdir /usr/pgsql-9.3
5 %define _bindir %{_pgdir}/bin
6 %define _libdir %{_pgdir}/lib
7 %define _datadir %{_pgdir}/share
8 %if "%(echo ${MAKE_ROOT})" != ""
9 %define _rpmdir %(echo ${MAKE_ROOT})/RPMS
10 %define _sourcedir %(echo ${MAKE_ROOT})
13 ## Set general information for pg_hint_plan.
14 Summary: Optimizer hint for PostgreSQL 9.3
19 Group: Applications/Databases
20 Source0: %{name}-%{version}.tar.gz
21 #URL: http://example.com/pg_hint_plan/
22 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%(%{__id_u} -n)
23 Vendor: NIPPON TELEGRAPH AND TELEPHONE CORPORATION
25 ## We use postgresql-devel package
26 BuildRequires: postgresql93-devel
27 Requires: postgresql93-libs
29 ## Description for "pg_hint_plan"
31 pg_hint_plan provides capability to force arbitrary plan to PostgreSQL' planner
32 to optimize queries by hand directly.
34 If you have query plan better than which PostgreSQL chooses, you can force your
35 plan by adding special comment block with optimizer hint before the query you
36 want to optimize. You can control scan method, join method, join order, and
37 planner-related GUC parameters during planning.
39 Note that this package is available for only PostgreSQL 9.3.
41 ## pre work for build pg_hint_plan
43 PATH=/usr/pgsql-9.3/bin:$PATH
44 if [ "${MAKE_ROOT}" != "" ]; then
46 make clean %{name}-%{version}.tar.gz
49 if [ ! -d %{_rpmdir} ]; then mkdir -p %{_rpmdir}; fi
52 ## Set variables for build environment
54 PATH=/usr/pgsql-9.3/bin:$PATH
55 make USE_PGXS=1 %{?_smp_mflags}
57 ## Set variables for install
60 install -d %{buildroot}%{_libdir}
61 install pg_hint_plan.so %{buildroot}%{_libdir}/pg_hint_plan.so
62 install -d %{buildroot}%{_datadir}/extension
63 install -m 644 pg_hint_plan--1.1.5.sql %{buildroot}%{_datadir}/extension/pg_hint_plan--1.1.5.sql
64 install -m 644 pg_hint_plan--1.1.4--1.1.5.sql %{buildroot}%{_datadir}/extension/pg_hint_plan--1.1.4--1.1.5.sql
65 install -m 644 pg_hint_plan--1.1.3--1.1.4.sql %{buildroot}%{_datadir}/extension/pg_hint_plan--1.1.3--1.1.4.sql
66 install -m 644 pg_hint_plan--1.1.2--1.1.3.sql %{buildroot}%{_datadir}/extension/pg_hint_plan--1.1.2--1.1.3.sql
67 install -m 644 pg_hint_plan.control %{buildroot}%{_datadir}/extension/pg_hint_plan.control
73 %defattr(0755,root,root)
74 %{_libdir}/pg_hint_plan.so
75 %defattr(0644,root,root)
76 %{_datadir}/extension/pg_hint_plan--1.1.5.sql
77 %{_datadir}/extension/pg_hint_plan--1.1.4--1.1.5.sql
78 %{_datadir}/extension/pg_hint_plan--1.1.3--1.1.4.sql
79 %{_datadir}/extension/pg_hint_plan--1.1.2--1.1.3.sql
80 %{_datadir}/extension/pg_hint_plan.control
82 # History of pg_hint_plan.
84 * Thu Jul 27 2017 Kyotaro Horiguchi
86 * Fri May 19 2017 Kyotaro Horiguchi
88 * Mon Dec 22 2014 Kyotaro Horiguchi
89 - Bug fix related to PL/pgSQL.
90 * Tue Dec 16 2014 Kyotaro Horiguchi
92 * Thu Sep 04 2014 Kyotaro Horiguchi
94 * Mon Sep 02 2013 Takashi Suzuki
95 - Initial cut for 1.1.0
96 * Mon Sep 24 2012 Shigeru Hanada <shigeru.hanada@gmail.com>
97 - Initial cut for 1.0.0