23 # Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved. |
23 # Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved. |
24 # |
24 # |
25 |
25 |
26 include ../../../make-rules/shared-macros.mk |
26 include ../../../make-rules/shared-macros.mk |
27 |
27 |
28 PATH=$(SPRO_VROOT)/bin:/usr/bin:/usr/gnu/bin |
|
29 |
|
30 COMPONENT_NAME= mod_wsgi |
28 COMPONENT_NAME= mod_wsgi |
31 COMPONENT_VERSION= 3.3 |
29 COMPONENT_VERSION= 4.3.0 |
32 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) |
30 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) |
33 COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz |
31 COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz |
34 COMPONENT_ARCHIVE_HASH= sha256:d96e1078990484cfe5579df1e95dc73f009495e9c3f9a066b0983650bd9e3243 |
32 COMPONENT_ARCHIVE_HASH= sha256:89dfcc8564bb8781f36370c80c6fbeef9ec0723dec273231f4f760760d8e813d |
35 COMPONENT_ARCHIVE_URL= http://modwsgi.googlecode.com/files/$(COMPONENT_ARCHIVE) |
33 COMPONENT_ARCHIVE_URL= https://pypi.python.org/packages/source/m/mod_wsgi/$(COMPONENT_ARCHIVE) |
36 COMPONENT_PROJECT_URL= http://code.google.com/p/modwsgi/ |
34 COMPONENT_PROJECT_URL= http://code.google.com/p/modwsgi/ |
37 COMPONENT_BUGDB= utility/apache |
35 COMPONENT_BUGDB= utility/apache |
38 |
36 |
39 TPNO= 7687 |
37 TPNO= 19269 |
40 |
38 |
41 include $(WS_MAKE_RULES)/prep.mk |
39 include $(WS_MAKE_RULES)/prep.mk |
42 include $(WS_MAKE_RULES)/configure.mk |
40 include $(WS_MAKE_RULES)/configure.mk |
43 include $(WS_MAKE_RULES)/ips.mk |
41 include $(WS_MAKE_RULES)/ips.mk |
|
42 include ../modules.mk |
|
43 |
|
44 APACHE_USR_PREFIX = /usr/apache2/ |
|
45 |
|
46 VARIANT_AP_22_PY26 = $(BUILD_DIR)/apache22-python26 |
|
47 VARIANT_AP_22_PY27 = $(BUILD_DIR)/apache22-python27 |
|
48 VARIANT_AP_22_PY34 = $(BUILD_DIR)/apache22-python34 |
|
49 VARIANT_AP_24_PY26 = $(BUILD_DIR)/apache24-python26 |
|
50 VARIANT_AP_24_PY27 = $(BUILD_DIR)/apache24-python27 |
|
51 VARIANT_AP_24_PY34 = $(BUILD_DIR)/apache24-python34 |
|
52 |
|
53 VARIANTS_32 = $(VARIANT_AP_22_PY26) $(VARIANT_AP_22_PY27) |
|
54 VARIANTS_64 = $(VARIANT_AP_22_PY26) $(VARIANT_AP_22_PY27) $(VARIANT_AP_22_PY34) \ |
|
55 $(VARIANT_AP_24_PY26) $(VARIANT_AP_24_PY27) $(VARIANT_AP_24_PY34) |
|
56 |
|
57 $(BUILD_DIR)/apache22-%/$(MACH32)/.configured: APXS=$(APACHE_USR_PREFIX)/2.2/bin/apxs |
|
58 $(BUILD_DIR)/apache22-%/$(MACH64)/.configured: APXS=$(APACHE_USR_PREFIX)/2.2/bin/$(MACH64)/apxs |
|
59 $(BUILD_DIR)/apache24-%/$(MACH64)/.configured: APXS=$(APACHE_USR_PREFIX)/2.4/bin/apxs |
|
60 |
|
61 $(BUILD_DIR)/apache2%-python26/$(MACH32)/.configured: PYTHON=$(PYTHON.2.6.32) |
|
62 $(BUILD_DIR)/apache2%-python26/$(MACH64)/.configured: PYTHON=$(PYTHON.2.6.64) |
|
63 $(BUILD_DIR)/apache2%-python27/$(MACH32)/.configured: PYTHON=$(PYTHON.2.7.32) |
|
64 $(BUILD_DIR)/apache2%-python27/$(MACH64)/.configured: PYTHON=$(PYTHON.2.7.64) |
|
65 $(BUILD_DIR)/apache2%-python34/$(MACH32)/.configured: PYTHON=$(PYTHON.3.4.32) |
|
66 $(BUILD_DIR)/apache2%-python34/$(MACH64)/.configured: PYTHON=$(PYTHON.3.4.64) |
44 |
67 |
45 COMPONENT_PRE_CONFIGURE_ACTION = \ |
68 COMPONENT_PRE_CONFIGURE_ACTION = \ |
46 ($(CLONEY) $(SOURCE_DIR) $(@D)) |
69 ($(CLONEY) $(SOURCE_DIR) $(@D)) |
47 |
70 |
48 # The following four paragraphs are copied from setup.py.mk |
71 CONFIGURE_OPTIONS += --with-python=$(PYTHON) |
49 # but since mod_wsgi doesn't use setup.py, we can't just include |
72 CONFIGURE_OPTIONS += --with-apxs=$(APXS) |
50 # setup.py.mk |
|
51 $(BUILD_DIR)/%-2.6/.built: PYTHON_VERSION=2.6 |
|
52 $(BUILD_DIR)/%-2.7/.built: PYTHON_VERSION=2.7 |
|
53 $(BUILD_DIR)/$(MACH32)-%/.built: BITS=32 |
|
54 $(BUILD_DIR)/$(MACH64)-%/.built: BITS=64 |
|
55 |
73 |
56 $(BUILD_DIR)/%-2.6/.installed: PYTHON_VERSION=2.6 |
74 ASLR_MODE = $(ASLR_NOT_APPLICABLE) |
57 $(BUILD_DIR)/%-2.7/.installed: PYTHON_VERSION=2.7 |
|
58 $(BUILD_DIR)/$(MACH32)-%/.installed: BITS=32 |
|
59 $(BUILD_DIR)/$(MACH64)-%/.installed: BITS=64 |
|
60 |
|
61 BUILD_32 = $(PYTHON_VERSIONS:%=$(BUILD_DIR)/$(MACH32)-%/.built) |
|
62 BUILD_64 = $(PYTHON_VERSIONS:%=$(BUILD_DIR)/$(MACH64)-%/.built) |
|
63 |
|
64 INSTALL_32 = $(PYTHON_VERSIONS:%=$(BUILD_DIR)/$(MACH32)-%/.installed) |
|
65 INSTALL_64 = $(PYTHON_VERSIONS:%=$(BUILD_DIR)/$(MACH64)-%/.installed) |
|
66 |
|
67 $(BUILD_32): CONFIGURE_OPTIONS += --with-python=$(PYTHON.32) |
|
68 $(BUILD_64): CONFIGURE_OPTIONS += --with-apxs=/usr/bin/$(MACH64)/apxs --with-python=$(PYTHON.64) |
|
69 |
|
70 $(INSTALL_32): COMPONENT_POST_INSTALL_ACTION = \ |
|
71 (cd $(PROTO_DIR)/usr/apache2/2.2/libexec ; \ |
|
72 $(MV) mod_wsgi.so mod_wsgi-$(PYTHON_VERSION).so) |
|
73 |
|
74 $(INSTALL_64): COMPONENT_POST_INSTALL_ACTION = \ |
|
75 (cd $(PROTO_DIR)/usr/apache2/2.2/libexec/$(MACH64) ; \ |
|
76 $(MV) mod_wsgi.so mod_wsgi-$(PYTHON_VERSION).so) |
|
77 |
75 |
78 # common targets |
76 # common targets |
|
77 configure: $(CONFIGURE_32_and_64) |
|
78 |
79 build: $(BUILD_32_and_64) |
79 build: $(BUILD_32_and_64) |
80 |
80 |
81 install: $(INSTALL_32_and_64) |
81 install: $(INSTALL_32_and_64) |
82 |
82 |
83 REQUIRED_PACKAGES += runtime/python-26 |
83 REQUIRED_PACKAGES += runtime/python-26 |
84 REQUIRED_PACKAGES += runtime/python-27 |
84 REQUIRED_PACKAGES += runtime/python-27 |
|
85 REQUIRED_PACKAGES += runtime/python-34 |
85 REQUIRED_PACKAGES += system/library |
86 REQUIRED_PACKAGES += system/library |
86 REQUIRED_PACKAGES += system/library/math |
87 REQUIRED_PACKAGES += system/library/math |
87 REQUIRED_PACKAGES += system/linker |
88 REQUIRED_PACKAGES += system/linker |