Fixup fromcvs/togit conversion
[pkgsrcv2.git] / misc / calibre / Makefile
1 # $NetBSD: Makefile,v 1.53 2013/05/04 07:19:03 obache Exp $
2 #
3
4 DISTNAME=       calibre-0.9.7
5 PKGREVISION=    7
6 CATEGORIES=     misc
7 MASTER_SITES=   ${MASTER_SITE_SOURCEFORGE:=calibre/}
8 EXTRACT_SUFX=   .tar.xz
9
10 MAINTAINER=     pkgsrc-users@NetBSD.org
11 HOMEPAGE=       http://www.calibre-ebook.com/
12 COMMENT=        E-book library management application
13 LICENSE=        gnu-gpl-v3
14
15 DEPENDS+=       help2man>=1.36.4:../../converters/help2man
16 DEPENDS+=       ${PYPKGPREFIX}-sqlite3-[0-9]*:../../databases/py-sqlite3
17 DEPENDS+=       xdg-utils>=1.0.2:../../misc/xdg-utils
18 DEPENDS+=       poppler-utils-[0-9]*:../../print/poppler-utils
19 DEPENDS+=       ${PYPKGPREFIX}-dns>=1.6.0:../../net/py-dns
20 DEPENDS+=       ${PYPKGPREFIX}-lxml>=2.2.1:../../textproc/py-lxml
21 DEPENDS+=       ${PYPKGPREFIX}-dateutil>=1.4.1:../../time/py-dateutil
22 DEPENDS+=       ${PYPKGPREFIX}-beautifulsoup>=3.0.5:../../www/py-beautifulsoup
23 DEPENDS+=       ${PYPKGPREFIX}-mechanize>=0.1.11nb1:../../www/py-mechanize
24 DEPENDS+=       ${PYPKGPREFIX}-cssselect>=0.7.1:../../textproc/py-cssselect
25 DEPENDS+=       ${PYPKGPREFIX}-cssutils>=0.9.9:../../textproc/py-cssutils
26 # Let's depend on the ones we have in pkgsrc instead of the bundled ones.
27 DEPENDS+=       ${PYPKGPREFIX}-Pdf-[0-9]*:../../print/py-Pdf
28 DEPENDS+=       ${PYPKGPREFIX}-cherrypy-[0-9]*:../../www/py-cherrypy
29 DEPENDS+=       ${PYPKGPREFIX}-html5lib-[0-9]*:../../textproc/py-html5lib
30 DEPENDS+=       ${PYPKGPREFIX}-chardet-[0-9]*:../../converters/py-chardet
31 DEPENDS+=       ${PYPKGPREFIX}-netifaces-[0-9]*:../../net/py-netifaces
32
33 USE_LANGUAGES=  c c++
34 USE_TOOLS+=     pkg-config pax
35 PYTHON_VERSIONS_ACCEPTED=       27
36 PYDISTUTILSPKG= yes
37 PYSETUPOPTARGS= # empty
38 PYSETUPINSTALLARGS=     --prefix=${PREFIX} --root=${DESTDIR:Q}${PREFIX}
39 WRKSRC=         ${WRKDIR}/calibre
40
41 INSTALLATION_DIRS=      share/applications
42 INSTALLATION_DIRS=      share/icons
43 INSTALLATION_DIRS=      share/calibre/recipes
44
45 FIX_PYTHON_PATHS+=      recipes/*.recipe
46 FIX_PYTHON_PATHS+=      resources/catalog/*.py
47 FIX_PYTHON_PATHS+=      resources/*.py
48 FIX_PYTHON_PATHS+=      *.py
49 FIX_PYTHON_PATHS+=      setup/*.py
50 FIX_PYTHON_PATHS+=      setup/installer/*.py
51 FIX_PYTHON_PATHS+=      setup/installer/linux/*.py
52 FIX_PYTHON_PATHS+=      setup/installer/osx/*.py
53 FIX_PYTHON_PATHS+=      setup/installer/osx/app/*.py
54 FIX_PYTHON_PATHS+=      setup/installer/windows/*.py
55 FIX_PYTHON_PATHS+=      src/calibre/*.py
56 FIX_PYTHON_PATHS+=      src/calibre/customize/*.py
57 FIX_PYTHON_PATHS+=      src/calibre/db/*.py
58 FIX_PYTHON_PATHS+=      src/calibre/db/tests/*.py
59 FIX_PYTHON_PATHS+=      src/calibre/devices/*.py
60 FIX_PYTHON_PATHS+=      src/calibre/devices/android/*.py
61 FIX_PYTHON_PATHS+=      src/calibre/devices/eslick/*.py
62 FIX_PYTHON_PATHS+=      src/calibre/devices/folder_device/*.py
63 FIX_PYTHON_PATHS+=      src/calibre/devices/iriver/*.py
64 FIX_PYTHON_PATHS+=      src/calibre/devices/kobo/*.py
65 FIX_PYTHON_PATHS+=      src/calibre/devices/prs505/*.py
66 FIX_PYTHON_PATHS+=      src/calibre/devices/prst1/*.py
67 FIX_PYTHON_PATHS+=      src/calibre/devices/teclast/*.py
68 FIX_PYTHON_PATHS+=      src/calibre/ebooks/*.py
69 FIX_PYTHON_PATHS+=      src/calibre/ebooks/chm/*.py
70 FIX_PYTHON_PATHS+=      src/calibre/ebooks/comic/*.py
71 FIX_PYTHON_PATHS+=      src/calibre/ebooks/compression/*.py
72 FIX_PYTHON_PATHS+=      src/calibre/ebooks/conversion/*.py
73 FIX_PYTHON_PATHS+=      src/calibre/ebooks/conversion/plugins/*.py
74 FIX_PYTHON_PATHS+=      src/calibre/ebooks/djvu/*.py
75 FIX_PYTHON_PATHS+=      src/calibre/ebooks/epub/fix/*.py
76 FIX_PYTHON_PATHS+=      src/calibre/ebooks/epub/*.py
77 FIX_PYTHON_PATHS+=      src/calibre/ebooks/fb2/__init__.py
78 FIX_PYTHON_PATHS+=      src/calibre/ebooks/html/*.py
79 FIX_PYTHON_PATHS+=      src/calibre/ebooks/iterator/*.py
80 FIX_PYTHON_PATHS+=      src/calibre/ebooks/lit/*.py
81 FIX_PYTHON_PATHS+=      src/calibre/ebooks/lrf/html/*.py
82 FIX_PYTHON_PATHS+=      src/calibre/ebooks/lrf/*.py
83 FIX_PYTHON_PATHS+=      src/calibre/ebooks/lrf/pylrs/*.py
84 FIX_PYTHON_PATHS+=      src/calibre/ebooks/markdown/extensions/*.py
85 FIX_PYTHON_PATHS+=      src/calibre/ebooks/metadata/*.py
86 FIX_PYTHON_PATHS+=      src/calibre/ebooks/metadata/book/*.py
87 FIX_PYTHON_PATHS+=      src/calibre/ebooks/metadata/book/*.py
88 FIX_PYTHON_PATHS+=      src/calibre/ebooks/metadata/sources/*.py
89 FIX_PYTHON_PATHS+=      src/calibre/ebooks/mobi/*.py
90 FIX_PYTHON_PATHS+=      src/calibre/ebooks/mobi/debug/*.py
91 FIX_PYTHON_PATHS+=      src/calibre/ebooks/mobi/reader/*.py
92 FIX_PYTHON_PATHS+=      src/calibre/ebooks/mobi/writer2/*.py
93 FIX_PYTHON_PATHS+=      src/calibre/ebooks/mobi/writer8/*.py
94 FIX_PYTHON_PATHS+=      src/calibre/ebooks/odt/__init__.py
95 FIX_PYTHON_PATHS+=      src/calibre/ebooks/oeb/*.py
96 FIX_PYTHON_PATHS+=      src/calibre/ebooks/oeb/display/*.py
97 FIX_PYTHON_PATHS+=      src/calibre/ebooks/oeb/display/test-cfi/*.py
98 FIX_PYTHON_PATHS+=      src/calibre/ebooks/oeb/transforms/*.py
99 FIX_PYTHON_PATHS+=      src/calibre/ebooks/pdb/haodoo/__init__.py
100 FIX_PYTHON_PATHS+=      src/calibre/ebooks/pdf/__init__.py
101 FIX_PYTHON_PATHS+=      src/calibre/ebooks/pdf/reflow.py
102 FIX_PYTHON_PATHS+=      src/calibre/ebooks/readability/*.py
103 FIX_PYTHON_PATHS+=      src/calibre/ebooks/rtf/*.py
104 FIX_PYTHON_PATHS+=      src/calibre/ebooks/rtf2xml/*.py
105 FIX_PYTHON_PATHS+=      src/calibre/ebooks/snb/*.py
106 FIX_PYTHON_PATHS+=      src/calibre/ebooks/textile/*.py
107 FIX_PYTHON_PATHS+=      src/calibre/ebooks/txt/*.py
108 FIX_PYTHON_PATHS+=      src/calibre/gui2/*.py
109 FIX_PYTHON_PATHS+=      src/calibre/gui2/actions/*.py
110 FIX_PYTHON_PATHS+=      src/calibre/gui2/add_wizard/*.py
111 FIX_PYTHON_PATHS+=      src/calibre/gui2/catalog/*.py
112 FIX_PYTHON_PATHS+=      src/calibre/gui2/convert/*.py
113 FIX_PYTHON_PATHS+=      src/calibre/gui2/dialogs/*.py
114 FIX_PYTHON_PATHS+=      src/calibre/gui2/library/*.py
115 FIX_PYTHON_PATHS+=      src/calibre/gui2/metadata/*.py
116 FIX_PYTHON_PATHS+=      src/calibre/gui2/preferences/*.py
117 FIX_PYTHON_PATHS+=      src/calibre/gui2/progress_indicator/*.py
118 FIX_PYTHON_PATHS+=      src/calibre/gui2/tag_browser/*.py
119 FIX_PYTHON_PATHS+=      src/calibre/gui2/viewer/*.py
120 FIX_PYTHON_PATHS+=      src/calibre/gui2/wizard/*.py
121 FIX_PYTHON_PATHS+=      src/calibre/library/*.py
122 FIX_PYTHON_PATHS+=      src/calibre/library/catalogs/*.py
123 FIX_PYTHON_PATHS+=      src/calibre/library/server/*.py
124 FIX_PYTHON_PATHS+=      src/calibre/manual/*.py
125 FIX_PYTHON_PATHS+=      src/calibre/manual/plugin_examples/helloworld/*.py
126 FIX_PYTHON_PATHS+=      src/calibre/manual/plugin_examples/interface_demo/*.py
127 FIX_PYTHON_PATHS+=      src/calibre/trac/*.py
128 FIX_PYTHON_PATHS+=      src/calibre/translations/*.py
129 FIX_PYTHON_PATHS+=      src/calibre/utils/*.py
130 FIX_PYTHON_PATHS+=      src/calibre/utils/fonts/*.py
131 FIX_PYTHON_PATHS+=      src/calibre/utils/ipc/*.py
132 FIX_PYTHON_PATHS+=      src/calibre/utils/magick/*.py
133 FIX_PYTHON_PATHS+=      src/calibre/utils/podofo/*.py
134 FIX_PYTHON_PATHS+=      src/calibre/utils/pyconsole/*.py
135 FIX_PYTHON_PATHS+=      src/calibre/utils/wmf/*.py
136 FIX_PYTHON_PATHS+=      src/calibre/web/feeds/*.py
137 FIX_PYTHON_PATHS+=      src/calibre/web/feeds/recipes/*.py
138 FIX_PYTHON_PATHS+=      src/calibre/web/fetch/*.py
139 FIX_PYTHON_PATHS+=      src/calibre/web/jsbrowser/*.py
140 FIX_PYTHON_PATHS+=      src/templite/*.py
141
142 SUBST_CLASSES+=         prefix
143 SUBST_SED.prefix=       -e "s,^QMAKE =.*,QMAKE = '${PREFIX}/qt4/bin/qmake',"
144 SUBST_MESSAGE.prefix=   Fixing path to QMAKE
145 SUBST_STAGE.prefix=     post-patch
146 SUBST_FILES.prefix=     setup/build_environment.py
147
148 # This one is for /usr/bin/env python (or even /usr/bin/env Python or /usr/bin/python2)
149 SUBST_CLASSES+=         path
150 SUBST_SED.path=         -e "s,\#! */usr/bin/env *[Pp]ython[0-9.]*,\#!${PYTHONBIN},"
151 SUBST_MESSAGE.path=     Fixing path to python.
152 SUBST_STAGE.path=       post-patch
153 SUBST_FILES.path=       ${FIX_PYTHON_PATHS}
154
155 # These ones are for replacing python[0-9*] with PYTHONBIN
156 REPLACE_PYTHON+=        recipes/animal_politico.recipe
157 REPLACE_PYTHON+=        recipes/kompiutierra.recipe
158 REPLACE_PYTHON+=        recipes/trouw.recipe
159 REPLACE_PYTHON+=        src/calibre/ebooks/markdown/extensions/*.py
160 REPLACE_PYTHON+=        src/calibre/ebooks/metadata/odt.py
161 REPLACE_PYTHON+=        src/calibre/utils/*.py
162 REPLACE_PYTHON+=        src/odf/*.py
163
164 MAKE_ENV+=              FC_INC_DIR=${BUILDLINK_PREFIX.fontconfig}/include/fontconfig
165 MAKE_ENV+=              FC_LIB_DIR=${BUILDLINK_PREFIX.fontconfig}/lib
166 MAKE_ENV+=              PODOFO_INC_DIR=${BUILDLINK_PREFIX.podofo}/include/podofo
167 MAKE_ENV+=              PODOFO_LIB_DIR=${BUILDLINK_PREFIX.podofo}/lib
168 #MAKE_ENV+=             WITH_USB=no
169
170 # Let's depend on the ones we have in pkgsrc instead of the bundled ones.
171 pre-configure:
172         cd ${WRKSRC} && rm -rf src/cherrypy src/pyPdf src/html5lib src/chardet
173
174 post-install:
175         cd ${WRKSRC}/recipes && pax -wr -pma *.recipe \
176             ${DESTDIR}${PREFIX}/share/calibre/recipes
177         cd ${WRKSRC} && pax -wr -pma Changelog* README \
178             COPYRIGHT INSTALL LICENSE.* \
179             ${DESTDIR}${PREFIX}/share/doc/calibre
180
181 .include "../../lang/python/application.mk"
182 .include "../../databases/sqlite3/buildlink3.mk"
183 .include "../../devel/chmlib/buildlink3.mk"
184 BUILDLINK_API_DEPENDS.libusb+=  libusb>=0.1.12
185 .include "../../devel/libusb/buildlink3.mk"
186 .include "../../fonts/fontconfig/buildlink3.mk"
187 BUILDLINK_API_DEPENDS.ImageMagick+=     ImageMagick>=6.5.9
188 .include "../../graphics/ImageMagick/buildlink3.mk"
189 BUILDLINK_API_DEPENDS.pyimaging+=       ${PYPKGPREFIX}-imaging>=1.1.6
190 .include "../../graphics/py-imaging/buildlink3.mk"
191 BUILDLINK_API_DEPENDS.libwmf+=  libwmf>=0.2.8
192 .include "../../graphics/libwmf/buildlink3.mk"
193 .include "../../lang/python/egg.mk"
194 _PYSETUPTOOLSINSTALLARGS=       # empty
195 # Get rid of --root=${DESTDIR}, use our own version from above instead.
196 # because the setup.py is not the standard one and behaves differently.
197 _PYSETUPINSTALLARGS=    ${PYSETUPINSTALLARGS} ${PYSETUPOPTARGS} ${_PYSETUPTOOLSINSTALLARGS}
198 #.include "../../lang/python/extension.mk"
199 .include "../../print/podofo/buildlink3.mk"
200 # ??? BUILDLINK_API_DEPENDS.podofo+=    podofo>=0.8.2
201 .include "../../print/poppler-includes/buildlink3.mk"
202 .include "../../print/poppler/buildlink3.mk"
203 BUILDLINK_API_DEPENDS.poppler-qt4+=     poppler-qt4>=0.12.0
204 .include "../../print/poppler-qt4/buildlink3.mk"
205 .include "../../sysutils/desktop-file-utils/desktopdb.mk"
206 .include "../../sysutils/hal/buildlink3.mk"
207 BUILDLINK_API_DEPENDS.py-dbus+= ${PYPKGPREFIX}-dbus>=0.82.2
208 .include "../../sysutils/py-dbus/buildlink3.mk"
209 .include "../../textproc/icu/buildlink3.mk"
210 .include "../../databases/shared-mime-info/mimedb.mk"
211 .include "../../textproc/py-elementtree/buildlink3.mk"
212 .include "../../x11/py-sip/buildlink3.mk"
213 BUILDLINK_API_DEPENDS.py-qt4+=  ${PYPKGPREFIX}-qt4>=4.7.0
214 .include "../../x11/py-qt4/buildlink3.mk"
215 BUILDLINK_API_DEPENDS.qt4-tools+=       qt4-tools>=4.7.0
216 .include "../../x11/qt4-tools/buildlink3.mk"
217 BUILDLINK_API_DEPENDS.qt4-qdbus+=       qt4-tools>=4.7.0
218 .include "../../x11/qt4-qdbus/buildlink3.mk"
219 .include "../../mk/bsd.pkg.mk"