| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- # Licensed to Cloudera, Inc. under one
- # or more contributor license agreements. See the NOTICE file
- # distributed with this work for additional information
- # regarding copyright ownership. Cloudera, Inc. 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.
- #
- # Public (SDK) Makefile variables. It requires the following to be defined:
- # ROOT
- # Points to the root of the Hue installation.
- # From here, we can include $(ROOT)/Makefile.vars
- # to access various
- #
- SHELL := /bin/bash
- ##############################
- # 1. Check for python-dev
- # 2. Locate the system Python
- ##############################
- # If we're an installed Makefile, allow the build to override
- # some things. This allows the install to prepopulate
- # SYS_PYTHON, in particular.
- ifneq ($(wildcard $(ROOT)/Makefile.buildvars),)
- include $(ROOT)/Makefile.buildvars
- endif
- PYTHON_H ?= $(shell ls /usr/include/python2.7/Python.h 2>/dev/null || ls /usr/include/python2.6/Python.h 2>/dev/null)
- ifndef SKIP_PYTHONDEV_CHECK
- ifeq ($(PYTHON_H),)
- $(error "Error: must have python development packages for 2.6 or 2.7. Could not find Python.h. Please install python2.6-devel or python2.7-devel")
- endif
- SYS_PYTHON := $(shell echo $(PYTHON_H) | grep -o python2..)
- else
- SYS_PYTHON ?= $(shell which python)
- endif
- ifeq ($(SYS_PYTHON),)
- $(error "Error: Need python version 2.6 or 2.7.")
- endif
- HADOOP_HOME ?= /usr/lib/hadoop
- ##############################
- # Location of the virtual environment
- ##############################
- BLD_DIR := $(ROOT)/build
- BLD_DIR_ENV := $(BLD_DIR)/env
- BLD_DIR_BIN := $(BLD_DIR_ENV)/bin
- THIRDPARTY_DIR := $(ROOT)/ext/thirdparty
- THIRDPARTY_JS_DIR := $(THIRDPARTY_DIR)/js
- STATIC_DIR := $(BLD_DIR)/static
- ##############################
- # ENV_PYTHON is the Python installed in the virtual environment. App
- # installation should always use the ENV_PYTHON.
- ##############################
- ENV_PYTHON := $(BLD_DIR_ENV)/bin/$(notdir $(SYS_PYTHON))
- ENV_PYTHON_VERSION = $(shell $(ENV_PYTHON) -c 'import sys; print ("python%d.%d"% sys.version_info[:2])')
- ##############################
- # ENV_EASY_INSTALL uses the easy_install script installed in the virtual
- # environment. It must be called as an argument to ENV_PYTHON so the
- # problem of the shebang being truncated at 80 characters in most kernels
- # doesn't arise.
- ##############################
- ENV_EASY_INSTALL := $(ENV_PYTHON) $(BLD_DIR_BIN)/easy_install
- ##############################
- # This version is substituted through to the tarballs and packages.
- ##############################
- DESKTOP_VERSION := $(shell python <(cat $(ROOT)/VERSION; echo print '(VERSION)'))
- MAVEN_VERSION = $(DESKTOP_VERSION)-SNAPSHOT
- ##############################
- # Path to the desktop hadoop plugin jar
- ##############################
- DESKTOP_PLUGIN_JAR := $(ROOT)/desktop/libs/hadoop/java-lib/hue-plugins-$(MAVEN_VERSION).jar
- ##############################
- # Path to the desktop dbproxy jar
- ##############################
- DB_PROXY_JAR := $(ROOT)/desktop/libs/librdbms/java-lib/dbproxy-1.0.jar
- ################################################
- # Internationalization
- ################################################
- PYBABEL := $(ROOT)/build/env/bin/pybabel
|