Add support for PGXN distribution.
authorDavid E. Wheeler <david@justatheory.com>
Sat, 25 Feb 2012 22:31:10 +0000 (14:31 -0800)
committerDavid E. Wheeler <david@justatheory.com>
Sat, 25 Feb 2012 22:31:10 +0000 (14:31 -0800)
Mainly by adding META.json. A new `zip` target has also been added to make it simple to generate the zip file for distribution.

Note that PGXN requires x.y.z versions, so the version has been changed from 2.3 to 2.3.0.

.gitignore
META.json [new file with mode: 0644]
Makefile

index 9b017283d16ea9da7ee4ded0caae3474a38cea25..43708b7cd54fe10de31f6693ac04eba32d4c2e04 100644 (file)
@@ -2,6 +2,9 @@ results/
 *.so
 tmp/
 *.o
+*.zip
+*.tgz
+*.tar.gz
 regression.diffs
 regression.out
 sql/plproxy--2*
diff --git a/META.json b/META.json
new file mode 100644 (file)
index 0000000..797c965
--- /dev/null
+++ b/META.json
@@ -0,0 +1,49 @@
+{
+   "name": "plproxy",
+   "abstract": "Database partitioning implemented as procedural language",
+   "description": "PL/Proxy is database partitioning system implemented as PL language.",
+   "version": "2.3.0",
+   "maintainer": [
+      "Sven Suursoho <sven.suursoho@gmail.com>",
+      "Marko Kreen <markokr@gmail.com>"
+   ],
+   "license": "postgresql",
+   "provides": {
+      "plproxy": {
+         "abstract": "Database partitioning implemented as procedural language",
+         "file": "sql/plproxy.sql",
+         "docfile": "doc/tutorial.txt",
+         "version": "2.3.0"
+      }
+   },
+   "prereqs": {
+      "runtime": {
+         "requires": {
+            "PostgreSQL": "8.3.0"
+         }
+      }
+   },
+   "resources": {
+      "bugtracker": {
+         "web": "http://github.com/markokr/plproxy-dev/issues/"
+      },
+      "repository": {
+        "url":  "https://github.com/markokr/plproxy-dev.git",
+        "web":  "https://github.com/markokr/plproxy-dev/",
+        "type": "git"
+      }
+   },
+   "generated_by": "David E. Wheeler",
+   "meta-spec": {
+      "version": "1.0.0",
+      "url": "http://pgxn.org/meta/spec.txt"
+   },
+   "tags": [
+      "proxy",
+      "sharding",
+      "rpc",
+      "remote procedue call",
+      "procedural language",
+      "PL"
+   ]
+}
index 9348983208d310db183308c9a40532021a62c39b..bf9b8e1740088c7d217c18ba7cc4bac71009ff1a 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -25,7 +25,7 @@ EXTRA_CLEAN = src/scanner.[ch] src/parser.tab.[ch] sql/plproxy.sql
 PG_CPPFLAGS = -I$(PQINC) -DNO_SELECT=$(NO_SELECT)
 SHLIB_LINK = -L$(PQLIB) -lpq
 
-TARNAME = plproxy-$(EXTVERSION)
+DISTNAME = plproxy-$(EXTVERSION)
 DIST_DIRS = src sql expected config doc debian
 DIST_FILES = Makefile src/plproxy.h src/rowstamp.h src/scanner.l src/parser.y \
                         $(foreach t,$(REGRESS),test/sql/$(t).sql test/expected/$(t).out) \
@@ -102,13 +102,16 @@ tags:
        cscope -I src -b -f .cscope.out src/*.c
 
 oldtgz:
-       rm -rf $(TARNAME)
-       mkdir -p $(TARNAME)
-       tar c $(DIST_FILES) $(SRCS) | tar xp -C $(TARNAME)
-       tar czf $(TARNAME).tgz $(TARNAME)
+       rm -rf $(DISTNAME)
+       mkdir -p $(DISTNAME)
+       tar c $(DIST_FILES) $(SRCS) | tar xp -C $(DISTNAME)
+       tar czf $(DISTNAME).tgz $(DISTNAME)
 
 tgz:
-       git archive -o $(TARNAME).tar.gz --prefix=$(TARNAME)/ HEAD
+       git archive -o $(DISTNAME).tar.gz --prefix=$(DISTNAME)/ HEAD
+
+zip:
+       git archive -o $(DISTNAME).zip --format zip --prefix=$(DISTNAME)/ HEAD
 
 clean: tgzclean doc-clean
 
@@ -116,7 +119,10 @@ doc-clean:
        $(MAKE) -C doc clean
 
 tgzclean:
-       rm -rf $(TARNAME) $(TARNAME).tar.gz
+       rm -rf $(DISTNAME) $(DISTNAME).tar.gz
+
+zipclean:
+       rm -rf $(DISTNAME) $(DISTNAME).zip
 
 test: install
        $(MAKE) installcheck || { less regression.diffs; exit 1; }