Author: rhs
Date: Mon Aug 24 22:39:13 2009
New Revision: 807419

URL: http://svn.apache.org/viewvc?rev=807419&view=rev
Log:
added Makefile with basic build/install/clean

Added:
    qpid/trunk/qpid/python/Makefile
    qpid/trunk/qpid/python/preppy   (with props)
Modified:
    qpid/trunk/qpid/python/   (props changed)
    qpid/trunk/qpid/python/qpid_config.py

Propchange: qpid/trunk/qpid/python/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Aug 24 22:39:13 2009
@@ -0,0 +1 @@
+build

Added: qpid/trunk/qpid/python/Makefile
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/python/Makefile?rev=807419&view=auto
==============================================================================
--- qpid/trunk/qpid/python/Makefile (added)
+++ qpid/trunk/qpid/python/Makefile Mon Aug 24 22:39:13 2009
@@ -0,0 +1,80 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+PREFIX=/usr/local
+EXEC_PREFIX=$(PREFIX)/bin
+DATA_DIR=$(PREFIX)/share
+
+PYTHON_LIB=$(shell python -c "from distutils.sysconfig import get_python_lib; 
print get_python_lib(prefix='$(PREFIX)')")
+PYTHON_VERSION=$(shell python -c "from distutils.sysconfig import 
get_python_version; print get_python_version()")
+AMQP_SPEC_DIR=$(DATA_DIR)/amqp
+
+DIRS=qmf qpid mllib models examples tests tests_0-8 tests_0-9 tests_0-10
+SRCS=$(shell find $(DIRS) -name "*.py") qpid_config.py
+BUILD=build
+TARGETS=$(SRCS:%.py=$(BUILD)/%.py) $(SRCS:%.py=$(BUILD)/%.pyc)
+
+all: build
+
+$(BUILD)/%.py: %.py
+       @mkdir -p $(shell dirname $@)
+       ./preppy $(PYTHON_VERSION) < $< > $@
+
+$(BUILD)/%.pyc: $(BUILD)/%.py
+       python -m py_compile $<
+
+$(BUILD)/qpid_config.py: qpid_config.py
+       @mkdir -p $(BUILD)
+       sed s...@amqp_spec_dir=.*@AMQP_SPEC_DIR='"$(AMQP_SPEC_DIR)"'@ < $< > $@
+
+build: $(TARGETS)
+
+install: build
+       install -d $(PYTHON_LIB)
+
+       install -d $(PYTHON_LIB)/mllib
+       install -pm 0644 LICENSE.txt NOTICE.txt $(BUILD)/mllib/*.* 
$(PYTHON_LIB)/mllib
+
+       install -d $(PYTHON_LIB)/qpid
+       install -pm 0644 LICENSE.txt NOTICE.txt README.txt $(BUILD)/qpid/*.* 
$(PYTHON_LIB)/qpid
+       install -pm 0644 $(BUILD)/qpid_config.py $(PYTHON_LIB)
+
+       install -d $(PYTHON_LIB)/qpid/tests
+       install -pm 0644 $(BUILD)/qpid/tests/*.* $(PYTHON_LIB)/qpid/tests
+
+       install -d $(PYTHON_LIB)/qmf
+       install -pm 0644 LICENSE.txt NOTICE.txt qmf/*.* $(PYTHON_LIB)/qmf
+
+       install -d $(PYTHON_LIB)/tests
+       install -pm 0644 $(BUILD)/tests/*.* $(PYTHON_LIB)/tests
+
+       install -d $(PYTHON_LIB)/tests_0-8
+       install -pm 0644 $(BUILD)/tests_0-8/*.* $(PYTHON_LIB)/tests_0-8
+
+       install -d $(PYTHON_LIB)/tests_0-9
+       install -pm 0644 $(BUILD)/tests_0-9/*.* $(PYTHON_LIB)/tests_0-9
+
+       install -d $(PYTHON_LIB)/tests_0-10
+       install -pm 0644 $(BUILD)/tests_0-10/*.* $(PYTHON_LIB)/tests_0-10
+
+       install -d $(EXEC_PREFIX)
+       install -pm 0755 qpid-python-test commands/* $(EXEC_PREFIX)
+
+clean:
+       rm -rf $(BUILD)

Added: qpid/trunk/qpid/python/preppy
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/python/preppy?rev=807419&view=auto
==============================================================================
--- qpid/trunk/qpid/python/preppy (added)
+++ qpid/trunk/qpid/python/preppy Mon Aug 24 22:39:13 2009
@@ -0,0 +1,67 @@
+#!/usr/bin/env python
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+import os, re, sys
+
+ann = re.compile(r"([ \t]*)@([_a-zA-Z][_a-zA-Z0-9]*)([ \t\n\r]+def[ 
\t]+)([_a-zA-Z][_a-zA-Z0-9]*)")
+line = re.compile(r"\n([ \t]*)[^ \t\n#]+")
+
+if len(sys.argv) == 2:
+  major, minor = [int(p) for p in sys.argv[1].split(".")]
+elif len(sys.argv) == 1:
+  major, minor = sys.version_info[0:2]
+else:
+  print "usage: %s [ version ] < input.py > output.py" % sys.argv[0]
+  sys.exit(-1)
+
+if major <= 2 and minor <= 3:
+  def process(input):
+    output = ""
+    pos = 0
+    while True:
+      m = ann.search(input, pos)
+      if m:
+        indent, decorator, idef, function = m.groups()
+        output += input[pos:m.start()]
+        output += "%...@%s%s%s" % (indent, decorator, idef, function)
+        pos = m.end()
+
+        subst = "\n%s%s = %s(%s)\n" % (indent, function, decorator, function)
+        npos = pos
+        while True:
+          n = line.search(input, npos)
+          if not n:
+            input += subst
+            break
+          if len(n.group(1)) <= len(indent):
+            idx = n.start()
+            input = input[:idx] + subst + input[idx:]
+            break
+          npos = n.end()
+      else:
+        break
+
+    output += input[pos:]
+    return output
+else:
+  def process(input):
+    return input
+
+sys.stdout.write(process(sys.stdin.read()))

Propchange: qpid/trunk/qpid/python/preppy
------------------------------------------------------------------------------
    svn:executable = *

Modified: qpid/trunk/qpid/python/qpid_config.py
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/python/qpid_config.py?rev=807419&r1=807418&r2=807419&view=diff
==============================================================================
--- qpid/trunk/qpid/python/qpid_config.py (original)
+++ qpid/trunk/qpid/python/qpid_config.py Mon Aug 24 22:39:13 2009
@@ -19,7 +19,7 @@
 
 import os
 
-qpid_home = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
-amqp_spec = os.path.join(qpid_home, "specs", "amqp.0-10-qpid-errata.xml")
-amqp_spec_0_8 = os.path.join(qpid_home, "specs", "amqp.0-8.xml")
-amqp_spec_0_9 = os.path.join(qpid_home, "specs", "amqp.0-9.xml")
+AMQP_SPEC_DIR=os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
 "specs")
+amqp_spec = os.path.join(AMQP_SPEC_DIR, "amqp.0-10-qpid-errata.xml")
+amqp_spec_0_8 = os.path.join(AMQP_SPEC_DIR, "amqp.0-8.xml")
+amqp_spec_0_9 = os.path.join(AMQP_SPEC_DIR, "amqp.0-9.xml")



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscr...@qpid.apache.org

Reply via email to