I tried to remove some targets that are supposed to be useless.
It works, but 9.5 is failling ... so I remove the variables to make the Makefile less complex
It builds now only as extension
EXTENSION = pgfincore
EXTVERSION = 1.2
-EXTCOMMENT = examine and manage the os buffer cache
MODULES = $(EXTENSION)
MODULEDIR = $(EXTENSION)
DOCS = README.md
-DATA_built = $(EXTENSION)--$(EXTVERSION).sql $(EXTENSION)--unpackaged--$(EXTVERSION).sql
-REGRESS = $(EXTENSION).ext
-EXTRA_CLEAN = $(EXTENSION).control
+DATA = $(EXTENSION)--$(EXTVERSION).sql $(EXTENSION)--unpackaged--$(EXTVERSION).sql
+REGRESS = $(EXTENSION)
PG_CONFIG = pg_config
PGXS := $(shell $(PG_CONFIG) --pgxs)
-include $(PGXS)
-
-# Build some more files for extension support:
-
-# pgxs is included after variable definition and before targets, so the
-# PostgreSQL default target is used (all:)
-# build the extension--unpackaged--version.sql from uninstall_extension.sql
-# this assumes that the extension was installed via sql script instead of
-# CREATE EXTENSION.
-# This won't upgrade from a previous version to the current one.
-$(EXTENSION)--unpackaged--$(EXTVERSION).sql: uninstall_$(EXTENSION).sql
- sed 's/DROP /ALTER EXTENSION $(EXTENSION) ADD /' $< > $@
-
-# this copy the extension.sql to extension--version.sql
-$(EXTENSION)--$(EXTVERSION).sql: $(EXTENSION).sql
- cp $< $@
-
-# this build extension.control from extension.control.in
-$(EXTENSION).control: $(EXTENSION).control.in
- sed 's/EXTVERSION/$(EXTVERSION)/;s/EXTENSION/$(EXTENSION)/;s/EXTCOMMENT/$(EXTCOMMENT)/' $< > $@
+include $(PGXS)
dist:
git archive --prefix=$(EXTENSION)-$(EXTVERSION)/ -o ../$(EXTENSION)_$(EXTVERSION).orig.tar.gz HEAD
+++ /dev/null
-CREATE EXTENSION pgfincore;
---
--- test SYSCONF
---
-select true from pgsysconf();
- bool
-------
- t
-(1 row)
-
-select true from pgsysconf_pretty();
- bool
-------
- t
-(1 row)
-
---
--- make a temp table to use below
---
-CREATE TEMP TABLE test AS SELECT generate_series(1,256) as a;
---
--- this is not perfect testing but it is hard to predict what the OS will do
--- for *sure*
---
---
--- test fadvise_loader
---
-select true from pgfadvise_loader('test', 0, true, true, B'1010');
- bool
-------
- t
-(1 row)
-
-select true from pgfadvise_loader('test', 0, true, false, B'1010');
- bool
-------
- t
-(1 row)
-
-select true from pgfadvise_loader('test', 0, false, true, B'1010');
- bool
-------
- t
-(1 row)
-
-select true from pgfadvise_loader('test', 0, false, false, B'1010');
- bool
-------
- t
-(1 row)
-
--- must not fail on empty databit input
-select true from pgfadvise_loader('test', 0, false, false, B'');
- bool
-------
- t
-(1 row)
-
--- ERROR on NULL databit input
-select true from pgfadvise_loader('test', 0, false, false, NULL);
-ERROR: pgfadvise_loader: databit argument shouldn't be NULL
-CONTEXT: SQL function "pgfadvise_loader" statement 1
---
--- test pgfincore
---
-select true from pgfincore('test', true);
- bool
-------
- t
-(1 row)
-
-select true from pgfincore('test');
- bool
-------
- t
-(1 row)
-
---
--- test DONTNEED, WILLNEED
---
-select true from pgfadvise_willneed('test');
- bool
-------
- t
-(1 row)
-
-select true from pgfadvise_dontneed('test');
- bool
-------
- t
-(1 row)
-
---
--- test PGFADVISE flags
---
-select true from pgfadvise_sequential('test');
- bool
-------
- t
-(1 row)
-
-select true from pgfadvise_random('test');
- bool
-------
- t
-(1 row)
-
-select true from pgfadvise_normal('test');
- bool
-------
- t
-(1 row)
-
---
--- tests drawers
---
-select NULL || pgfincore_drawer(databit) from pgfincore('test','main',true);
- ?column?
-----------
-
-(1 row)
-
-SET client_min_messages = warning;
-\set ECHO none
-RESET client_min_messages;
+CREATE EXTENSION pgfincore;
--
-- test SYSCONF
--
t
(1 row)
+--
+-- tests drawers
+--
+select NULL || pgfincore_drawer(databit) from pgfincore('test','main',true);
+ ?column?
+----------
+
+(1 row)
+
+++ /dev/null
-SET client_min_messages = warning;
-\set ECHO none
-RESET client_min_messages;
---
--- test SYSCONF
---
-select true from pgsysconf();
- bool
-------
- t
-(1 row)
-
-select true from pgsysconf_pretty();
- bool
-------
- t
-(1 row)
-
---
--- make a temp table to use below
---
-CREATE TEMP TABLE test AS SELECT generate_series(1,256) as a;
---
--- this is not perfect testing but it is hard to predict what the OS will do
--- for *sure*
---
---
--- test fadvise_loader
---
-select true from pgfadvise_loader('test', 0, true, true, B'1010');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_loader" statement 1
-select true from pgfadvise_loader('test', 0, true, false, B'1010');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_loader" statement 1
-select true from pgfadvise_loader('test', 0, false, true, B'1010');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_loader" statement 1
-select true from pgfadvise_loader('test', 0, false, false, B'1010');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_loader" statement 1
---
--- test pgfincore
---
-select true from pgfincore('test', true);
- bool
-------
- t
-(1 row)
-
-select true from pgfincore('test');
- bool
-------
- t
-(1 row)
-
---
--- test DONTNEED, WILLNEED
---
-select true from pgfadvise_willneed('test');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_willneed" statement 1
-select true from pgfadvise_dontneed('test');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_dontneed" statement 1
---
--- test PGFADVISE flags
---
-select true from pgfadvise_sequential('test');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_sequential" statement 1
-select true from pgfadvise_random('test');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_random" statement 1
-select true from pgfadvise_normal('test');
-ERROR: POSIX_FADVISE UNSUPPORTED on your platform
-CONTEXT: SQL function "pgfadvise_normal" statement 1
--- /dev/null
+# pgfincore extension
+comment = 'examine and manage the os buffer cache'
+default_version = '1.2'
+module_pathname = '$libdir/pgfincore'
+directory = pgfincore
+relocatable = true
+++ /dev/null
-# EXTENSION extension
-comment = 'EXTCOMMENT'
-default_version = 'EXTVERSION'
-module_pathname = '$libdir/EXTENSION'
-directory = EXTENSION
-relocatable = true
+++ /dev/null
-CREATE EXTENSION pgfincore;
-
---
--- test SYSCONF
---
-select true from pgsysconf();
-select true from pgsysconf_pretty();
-
---
--- make a temp table to use below
---
-CREATE TEMP TABLE test AS SELECT generate_series(1,256) as a;
-
---
--- this is not perfect testing but it is hard to predict what the OS will do
--- for *sure*
---
-
---
--- test fadvise_loader
---
-select true from pgfadvise_loader('test', 0, true, true, B'1010');
-select true from pgfadvise_loader('test', 0, true, false, B'1010');
-select true from pgfadvise_loader('test', 0, false, true, B'1010');
-select true from pgfadvise_loader('test', 0, false, false, B'1010');
--- must not fail on empty databit input
-select true from pgfadvise_loader('test', 0, false, false, B'');
--- ERROR on NULL databit input
-select true from pgfadvise_loader('test', 0, false, false, NULL);
-
---
--- test pgfincore
---
-select true from pgfincore('test', true);
-select true from pgfincore('test');
-
---
--- test DONTNEED, WILLNEED
---
-select true from pgfadvise_willneed('test');
-select true from pgfadvise_dontneed('test');
-
---
--- test PGFADVISE flags
---
-select true from pgfadvise_sequential('test');
-select true from pgfadvise_random('test');
-select true from pgfadvise_normal('test');
-
---
--- tests drawers
---
-select NULL || pgfincore_drawer(databit) from pgfincore('test','main',true);
-SET client_min_messages = warning;
-\set ECHO none
-\i pgfincore.sql
-\set ECHO all
-RESET client_min_messages;
+CREATE EXTENSION pgfincore;
--
-- test SYSCONF
select true from pgfadvise_random('test');
select true from pgfadvise_normal('test');
+--
+-- tests drawers
+--
+select NULL || pgfincore_drawer(databit) from pgfincore('test','main',true);