From: Michael Olbrich <m.olbrich@pengutronix.de>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH] django: new package to provide Django 1.6.5
Date: Thu, 31 Jul 2014 10:14:14 +0200 [thread overview]
Message-ID: <20140731081414.GB29377@pengutronix.de> (raw)
In-Reply-To: <1406743955-30185-1-git-send-email-u.kleine-koenig@pengutronix.de>
On Wed, Jul 30, 2014 at 08:12:35PM +0200, Uwe Kleine-König wrote:
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> ---
> rules/django.in | 29 +++++++++++++++++
> rules/django.make | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 122 insertions(+)
> create mode 100644 rules/django.in
> create mode 100644 rules/django.make
>
> diff --git a/rules/django.in b/rules/django.in
> new file mode 100644
> index 000000000000..8b66702d4c67
> --- /dev/null
> +++ b/rules/django.in
> @@ -0,0 +1,29 @@
> +## SECTION=networking
> +
> +menuconfig DJANGO
> + tristate
> + select PYTHON
> + select PYTHON_SQLITE
> + select PYTHON_ZLIB
> + prompt "Django "
> + help
> + Django is a high-level Python Web framework that encourages rapid
> + development and clean, pragmatic design.
> +
> +if DJANGO
> +
> +menu "locales"
Hmmm, I think a string with a proper comment here is better. 'Space
separated list of locales, e.g. "de en"...'
No need to make it harder than necessary to add new locales.
> +
> + config DJANGO_LOCALE_DE
> + bool
> + prompt "de"
> +
> + config DJANGO_LOCALE_EN
> + bool
> + prompt "en"
> +
> + # add more if needed
> +
> +endmenu
> +
> +endif
> diff --git a/rules/django.make b/rules/django.make
> new file mode 100644
> index 000000000000..256f7b8dab0a
> --- /dev/null
> +++ b/rules/django.make
> @@ -0,0 +1,93 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2014 by Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
> +#
> +# See CREDITS for details about who has contributed to this project.
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_DJANGO) += django
> +
> +#
> +# Paths and names
> +#
> +DJANGO_VERSION := 1.6.5
> +DJANGO_MD5 := e4c5b2d35ecb3807317713afa70a0c77
> +DJANGO := Django-$(DJANGO_VERSION)
> +DJANGO_SUFFIX := tar.gz
> +DJANGO_URL := https://www.djangoproject.com/download/$(DJANGO_VERSION)/tarball/
> +DJANGO_SOURCE := $(SRCDIR)/$(DJANGO).$(DJANGO_SUFFIX)
> +DJANGO_DIR := $(BUILDDIR)/$(DJANGO)
> +DJANGO_LICENSE := BSD
> +
> +# ----------------------------------------------------------------------------
> +# Prepare
> +# ----------------------------------------------------------------------------
> +
> +DJANGO_PATH := PATH=$(CROSS_PATH)
> +DJANGO_CONF_TOOL := NO
> +DJANGO_MAKE_ENV := $(CROSS_ENV)
> +
> +DJANGO_LOCALES-y :=
> +DJANGO_LOCALES-$(PTXCONF_DJANGO_LOCALE_DE) += de
> +DJANGO_LOCALES-$(PTXCONF_DJANGO_LOCALE_EN) += en
> +
> +# ----------------------------------------------------------------------------
> +# Compile
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/django.compile:
> + @$(call targetinfo)
> + cd $(DJANGO_DIR) && \
> + $(DJANGO_PATH) $(DJANGO_MAKE_ENV) \
> + $(CROSS_PYTHON) setup.py build
I think the prefix should be added here as well, in case it's used in some
code generation etc.
> + @$(call touch)
> +
> +# ----------------------------------------------------------------------------
> +# Install
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/django.install:
> + @$(call targetinfo)
> + cd $(DJANGO_DIR) && \
> + $(DJANGO_PATH) $(DJANGO_MAKE_ENV) \
> + $(CROSS_PYTHON) setup.py install --root=$(DJANGO_PKGDIR) --prefix=/usr -O2
Why '-O2' here and not in the compile stage?
> + @$(call touch)
> +
> +# ----------------------------------------------------------------------------
> +# Target-Install
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/django.targetinstall:
> + @$(call targetinfo)
> +
> + @$(call install_init, django)
> + @$(call install_fixup, django, PRIORITY, optional)
> + @$(call install_fixup, django, SECTION, base)
> + @$(call install_fixup, django, AUTHOR, "Robert Schwebel <r.schwebel@pengutronix.de>")
> + @$(call install_fixup, django, DESCRIPTION, missing)
> +
> + # everything but locales
> + find "$(DJANGO_PKGDIR)" -type d -name locale -prune -o -type f -printf '/%P\n' | while read fn; do \
> + $(call install_copy, django, 0, 0, 0644, -, $$fn); \
> + done
I dislike just dumping everything in the package, e.g. the egg-info is not
needed. Install /usr/bin/django-admin.py explicitly and then use:
@cd /usr/lib/python$(PYTHON_MAJORMINOR)/site-packages/django/ && find ...
This way it breaks in case something went wrong and the directory is
missing.
> +
> + # locales
> + find "$(DJANGO_PKGDIR)" -type d -name locale -printf '/%P\n' | while read localedir; do \
> + for locale in $(DJANGO_LOCALES-y); do \
> + find "$(DJANGO_PKGDIR)$$localedir/$$locale" -type f -printf "$$localedir/$$locale/%P\n" | while read fn; do \
Same here with 'cd' and I think the django.po files are not needed, just
the Python stuff and the compiled django.mo
Michael
> + $(call install_copy, django, 0, 0, 0644, -, $$fn); \
> + done; \
> + done; \
> + done
> +
> + @$(call install_finish, django)
> +
> + @$(call touch)
> +
> +# vim: syntax=make
> --
> 2.0.1
>
>
> --
> ptxdist mailing list
> ptxdist@pengutronix.de
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
--
ptxdist mailing list
ptxdist@pengutronix.de
next prev parent reply other threads:[~2014-07-31 8:14 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-30 18:12 Uwe Kleine-König
2014-07-31 8:14 ` Michael Olbrich [this message]
2014-07-31 8:44 ` Uwe Kleine-König
2014-07-31 9:08 ` Michael Olbrich
2014-07-31 9:17 ` Uwe Kleine-König
2014-07-31 9:59 ` Michael Olbrich
2014-07-31 19:34 ` [ptxdist] [PATCH v2] " Uwe Kleine-König
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140731081414.GB29377@pengutronix.de \
--to=m.olbrich@pengutronix.de \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox