[python-Enable] Initial Import

Chen Lei supercyper at fedoraproject.org
Mon Sep 6 02:16:25 UTC 2010


commit 169eccfdd34ad240ce22363caf00337d5d98ef2f
Author: Chen Lei <supercyper at 163.com>
Date:   Mon Sep 6 10:15:55 2010 +0800

    Initial Import

 .gitignore         |    1 +
 freetype2.diff     |  133 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 python-Enable.spec |   87 ++++++++++++++++++++++++++++++++++
 sources            |    1 +
 4 files changed, 222 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..b174a48 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/Enable-3.3.1.tar.gz
diff --git a/freetype2.diff b/freetype2.diff
new file mode 100644
index 0000000..d3351a9
--- /dev/null
+++ b/freetype2.diff
@@ -0,0 +1,133 @@
+Author: Varun Hiremath <varun at debian.org>  
+Date: Sun, 28 Feb 2010 15:16:17 -0500
+Description: Remove freetype2 sources from upstream and use the
+ pre-built libfreetype6-dev library in Debian.
+Index: python-enable-3.3.0/enthought/kiva/agg/setup.py
+===================================================================
+--- python-enable-3.3.0.orig/enthought/kiva/agg/setup.py	2010-02-25 13:15:07.000000000 -0500
++++ python-enable-3.3.0/enthought/kiva/agg/setup.py	2010-02-28 14:55:37.000000000 -0500
+@@ -4,59 +4,6 @@
+ import re
+ import platform
+ 
+-freetype2_sources =['autofit/autofit.c',
+-                    'base/ftbase.c','base/ftsystem.c','base/ftinit.c',
+-                    'base/ftglyph.c','base/ftmm.c','base/ftbdf.c',
+-                    'base/ftbbox.c','base/ftdebug.c','base/ftxf86.c',
+-                    'base/fttype1.c',
+-                    'bdf/bdf.c',
+-                    'cff/cff.c',
+-                    'cid/type1cid.c',
+-                    'lzw/ftlzw.c',
+-                    'pcf/pcf.c','pfr/pfr.c',
+-                    'psaux/psaux.c',
+-                    'pshinter/pshinter.c',
+-                    'psnames/psnames.c',
+-                    'raster/raster.c',
+-                    'sfnt/sfnt.c',
+-                    'smooth/smooth.c',
+-                    'truetype/truetype.c',
+-                    'type1/type1.c',
+-                    'type42/type42.c',
+-                    'winfonts/winfnt.c',
+-                    'gzip/ftgzip.c',
+-                    'base/ftmac.c',
+-                    ]
+-
+-freetype2_dirs = [
+-    'autofit',
+-    'base',
+-    'bdf',
+-    'cache',
+-    'cff',
+-    'cid',
+-    'gxvalid',
+-    'gzip',
+-    'lzw',
+-    'otvalid',
+-    'pcf',
+-    'pfr',
+-    'psaux',
+-    'pshinter',
+-    'psnames',
+-    'raster',
+-    'sfnt',
+-    'smooth',
+-    'tools',
+-    'truetype',
+-    'type1',
+-    'type42',
+-    'winfonts',
+-    'gzip'
+-    ]
+-
+-
+-
+ def configuration(parent_package='',top_path=None):
+     from numpy.distutils.misc_util import Configuration
+     from numpy.distutils.system_info import dict_append, get_info
+@@ -85,45 +32,11 @@
+         plat = 'x11'  # use with gtk2, it's slow but reliable
+         #plat = 'gdkpixbuf2'
+ 
+-
+-    #-------------------------------------------------------------------------
+-    # Add the freetype library (agg 2.4 links against this)
+-    #-------------------------------------------------------------------------
+-
+-    prefix = config.paths('freetype2/src')[0]
+-    freetype_lib = 'freetype2_src'
+-
+-    def get_ft2_sources((lib_name, build_info), build_dir):
+-        sources = [prefix + "/" + s for s in freetype2_sources]
+-        if sys.platform=='darwin':
+-            return sources[:]
+-        return sources[:-1]
+-
+-    ft2_incl_dirs = ['freetype2/src/' + s for s in freetype2_dirs] \
+-                    + ['freetype2/include', 'freetype2/src']
+-    ft2_incl_dirs = config.paths(*ft2_incl_dirs)
+-    if sys.platform == 'darwin':
+-        ft2_incl_dirs.append("/Developer/Headers/FlatCarbon")
+-
+-    config.add_library(freetype_lib,
+-                       sources = [get_ft2_sources],
+-                       include_dirs = ft2_incl_dirs,
+-
+-                       # This macro was introduced in Freetype 2.2; if it is
+-                       # not defined, then the ftheader.h file (one of the
+-                       # primary headers) won't pull in any additional internal
+-                       # Freetype headers, and the library will mysteriously
+-                       # fail to build.
+-                       macros = [("FT2_BUILD_LIBRARY", None)],
+-
+-                       depends = ['freetype2'],
+-                       )
+-
+     #-------------------------------------------------------------------------
+     # Add the Agg sources
+     #-------------------------------------------------------------------------
+ 
+-    agg_include_dirs = [agg_dir+'/include',agg_dir+'/font_freetype'] + ft2_incl_dirs
++    agg_include_dirs = [agg_dir+'/include',agg_dir+'/font_freetype'] + ["/usr/include/freetype2/"]
+     agg_sources = [agg_dir+'/src/*.cpp',
+                     agg_dir+'/font_freetype/*.cpp']
+     config.add_library(agg_lib,
+@@ -137,7 +50,7 @@
+     if sys.platform == 'darwin':
+         define_macros = [('__DARWIN__', None)]
+         macros = [('__DARWIN__', None)]
+-        extra_link_args = ['-framework', 'Carbon']
++        extra_link_args = ['-framework', 'Carbon', '-Wl,-search_paths_first']
+     else:
+         define_macros = []
+         macros = []
+@@ -191,7 +104,7 @@
+ 
+     build_info = {}
+     kiva_lib = 'kiva_src'
+-    build_libraries = [kiva_lib, agg_lib, freetype_lib]
++    build_libraries = [kiva_lib, agg_lib, "freetype"]
+     if sys.platform == "win32":
+         build_libraries += ["opengl32", "glu32"]
+     elif sys.platform == "darwin":
diff --git a/python-Enable.spec b/python-Enable.spec
new file mode 100644
index 0000000..7be78d7
--- /dev/null
+++ b/python-Enable.spec
@@ -0,0 +1,87 @@
+%global srcname Enable
+
+Name:		python-Enable
+Version:	3.3.1
+Release:	1%{?dist}
+Summary:	Drawing and interaction packages
+Group:		Development/Libraries
+License:	BSD and LGPLv2+ and LGPLv2 and LGPLv3 and Public Domain
+URL:		http://code.enthought.com/projects/enable
+Source0:	http://www.enthought.com/repo/ETS/%{srcname}-%{version}.tar.gz
+Patch1:		freetype2.diff
+BuildRequires:	python2-devel python-setuptools numpy
+BuildRequires:	python-setupdocs Pyrex
+BuildRequires:	swig freetype-devel libGLU-devel
+Requires:	python-EnthoughtBase python-TraitsGUI
+Requires:	numpy python-reportlab
+
+%description
+The Enable project provides two related multi-platform packages for drawing 
+GUI objects.
+
+  * Enable: An object drawing library that supports containment and
+    event notification.
+  * Kiva: A multi-platform DisplayPDF vector drawing engine.
+
+%prep
+%setup -q -n %{srcname}-%{version}
+%patch1 -p1
+
+rm -rf *.egg-info
+rm -rf examples/kiva/agg/agg-24/{win32_*,BeOS}
+# Remove bundled freetype2
+rm -rf enthought/kiva/agg/freetype2
+
+# Convert encoding to UTF-8
+for file in *.txt; do
+    iconv -f ISO-8859-1 -t UTF-8 -o $file.new $file && \
+    touch -r $file $file.new && \
+    mv $file.new $file
+done
+
+# Remove DOS line endings
+for file in `find -name "*.txt" -o -name "*.py" -o -name "*.cpp" -o -name "*.h" \
+	-o -name "Makefile*"`; do
+	sed "s|\r||g" $file > $file.new && \
+	touch -r $file $file.new && \
+	mv $file.new $file
+done
+
+# Remove shebang
+for file in `find enthought -name "*.py"`; do
+	sed '/^#!\//, 1d' $file > $file.new && \
+	touch -r $file $file.new && \
+	mv $file.new $file
+done
+
+# Remove exec permission
+find -type f -exec chmod 0644 {} \;
+
+%build
+CFLAGS="%{optflags}" python setup.py build
+
+%install
+python setup.py install -O1 --skip-build --root %{buildroot}
+
+find %{buildroot}%{python_sitearch}/enthought -name "setup.py*" -exec rm {} ";"
+# Remove DOS line endings
+for file in `find build/docs -name "*.txt"`; do
+	sed "s|\r||g" $file > $file.new && \
+	touch -r $file $file.new && \
+	mv $file.new $file
+done
+
+%files
+%defattr(-,root,root,-)
+%doc *.txt docs/*.txt docs/kiva 
+%doc build/docs/html examples
+%{python_sitearch}/*.egg-info
+%{python_sitearch}/*.pth
+%{python_sitearch}/enthought/enable
+%{python_sitearch}/enthought/enable2
+%{python_sitearch}/enthought/kiva
+%{python_sitearch}/enthought/savage
+
+%changelog
+* Mon Jul 26 2010 Chen Lei <supercyper at 163.com> - 3.3.1-1
+- Initial package
diff --git a/sources b/sources
index e69de29..ca8df3c 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+44d5fbb33a3637fefeba83f9804587b2  Enable-3.3.1.tar.gz


More information about the scm-commits mailing list