http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e138596a/wscript_configure
----------------------------------------------------------------------
diff --git a/wscript_configure b/wscript_configure
deleted file mode 100644
index d586c9e..0000000
--- a/wscript_configure
+++ /dev/null
@@ -1,408 +0,0 @@
-#!/usr/bin/env python
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  The ASF 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.
-
-"""examines environment, then:
-       - configures classpath as per environment or command-line options
-       - detects Tomcat (on Windows)
-       - detects or configures directories according to command-line options"""
-
-import Utils,Node,Options,Logs,Scripting,Environment,Build,Configure
-from os import unlink as _unlink, makedirs as _makedirs, getcwd as _getcwd, 
chdir as _chdir
-try: from os import getuid as _getuid
-except ImportError: pass
-from os.path import abspath as _abspath, basename as _basename, dirname as 
_dirname, exists as _exists, isdir as _isdir, split as _split, join as _join, 
expanduser as _expanduser, sep, pathsep, pardir
-from glob import glob as _glob
-import time
-
-
-# list of JARs that provide the build dependencies
-# "j" generally means /usr/share/java
-# when adding a new system JAR file:
-# 1. check the hard_deps variable at the bottom and add the appropriate 
packaging information,
-# 2. add the RPM package that contains the jarfile into the cloud.spec file, 
and the DEB package into the debian/control file
-# 3. (the jars specified here will be looked up at runtime with 
build-classpath, on linux installs)
-systemjars = {
-       'common':
-       (
-               "commons-collections.jar",
-               # "commons-daemon.jar",
-               #"commons-dbcp.jar",
-               "commons-codec.jar",
-               "commons-logging.jar",
-               "commons-logging-api.jar",
-               #"commons-pool.jar",
-               "commons-httpclient.jar",
-               "ws-commons-util.jar",
-               "mysql-connector-java.jar",
-       ),
-       'Fedora':
-       (
-               "tomcat6-servlet-2.5-api.jar",
-               "tomcat6-el-2.1-api-6.0.26.jar",
-               "tomcat6-jsp-2.1-api-6.0.26.jar",
-               #"tomcat6/catalina.jar", # all supported distros put the file 
there
-       ),
-       'RHEL':
-       (
-               "tomcat6-servlet-2.5-api.jar",
-               "tomcat6-el-2.1-api-6.0.24.jar",
-               "tomcat6-jsp-2.1-api-6.0.24.jar",
-                "jakarta-taglibs-core-1.1.1.jar",
-                "jakarta-taglibs-standard-1.1.1.jar",
-                "tomcat6/jasper.jar",
-                "tomcat6/jasper-el.jar",
-                "tomcat6/jasper-jdt.jar",
-                
-       ),
-       'CentOS':
-       (
-               "tomcat6-servlet-2.5-api.jar",
-               "tomcat6-jsp-2.1-api-6.0.24.jar",
-               "tomcat6-el-2.1-api-6.0.24.jar",
-                "jakarta-taglibs-core-1.1.1.jar",
-                "jakarta-taglibs-standard-1.1.1.jar",
-                "tomcat6/jasper.jar",
-                "tomcat6/jasper-el.jar",
-                "tomcat6/jasper-jdt.jar",
-               #"tomcat6/catalina.jar", # all supported distros put the file 
there
-       ),
-       'Ubuntu':
-       (
-               "servlet-api-2.5.jar",
-               "jsp-api-2.1.jar",
-               "jasper.jar",
-               "el-api-2.1.jar",
-               "jasper-el.jar",
-               "ecj.jar",
-               "cglib.jar",
-               "asm3.jar",
-               "jsch.jar",
-               "backport-util-concurrent.jar",
-               "jetty.jar",
-               "jetty-util.jar",
-               "jetty-start-daemon.jar",
-               "jetty-sslengine.jar",
-               "jetty-start.jar",
-               "jna.jar",
-               "log4j-1.2.jar",
-       ),
-       'Windows':
-       (
-               "servlet-api.jar", # this ships with Tomcat in lib/
-               #"catalina.jar",
-       ),
-       'Mac':
-       (
-               "servlet-api.jar",
-       ),
-       'openSUSE':
-       (
-               "tomcat6-servlet-2.5-api.jar",
-               "tomcat6-jsp-2.1-api-6.0.24.jar",
-               "tomcat6-el-1.0-api.jar"
-       ),
-       'SLES':
-       (
-               "tomcat6-servlet-2.5-api.jar",
-               "tomcat6-jsp-2.1-api-6.0.24.jar",
-               "tomcat6-el-1.0-api.jar"
-       )
-}
-
-#A JAR dependency may be:
-
-#- required during compile-time
-#- required during run-time
-
-#A JAR file can be available:
-
-#- in Tomcat lib/
-#- as a Linux system package
-#- in the cloud-deps package
-#- in the cloud-premium package
-
-# servlet-api:
-
-#- is required during compile-time
-#- is required during management server run-time
-#- is available in Tomcat lib/ (Windows/Mac) AND as a system package (Linux)
-#  -> ERGO, we do not need to include it 
-#           but it should be named on the SYSTEMJARS (which is then used in 
the tomcat6.conf to build the MS classpath),
-#           and it should also be in the compile-time CLASSPATH
-
-# =====================================
-
-# list of dependencies for configure check
-# (classname,fedora package name,ubuntu package name)
-# when adding a package name here, also add to the spec or debian control file
-hard_deps = [
-       ('java.io.FileOutputStream',"java-devel","openjdk-6-jdk"),
-       
('javax.servlet.http.Cookie',"tomcat6-servlet-2.5-api","libservlet2.5-java","(if
 on Windows,did you set TOMCAT_HOME to point to your Tomcat setup?)"),
-       
('org.apache.naming.resources.Constants',"tomcat6-lib","libtomcat6-java","(if 
on Windows,did you set TOMCAT_HOME to point to your Tomcat setup?)"),
-]
-
-
-if Options.options.VERNUM:
-       Version = Options.options.VERNUM
-else:
-       Version = "2.2"
-builddate = time.strftime("%Y.%m.%d.%H.%M.%S", 
time.localtime()).replace('.','')
-conf.env.VERSION = Version + "." + builddate
-
-conf.check_message_1('Detecting distribution')
-if Options.platform == 'win32': conf.env.DISTRO = "Windows"
-elif Options.platform == 'darwin': conf.env.DISTRO = "Mac"
-elif _exists("/etc/network"): conf.env.DISTRO = "Ubuntu"
-elif _exists("/etc/fedora-release"): conf.env.DISTRO = "Fedora"
-elif _exists("/etc/centos-release"): conf.env.DISTRO = "CentOS"
-elif _exists("/etc/redhat-release"):
-    version = file("/etc/redhat-release").readline()
-    if version.find("Red Hat Enterprise Linux Server release 6") != -1:
-        conf.env.DISTRO = "RHEL"
-    elif version.find("CentOS release") != -1:
-        conf.env.DISTRO = "CentOS"
-elif _exists("/etc/SuSE-release"):
-    content = file("/etc/SuSE-release").readlines()
-    supportedVersion = None
-    if content[0].find("SUSE Linux Enterprise Server 11") != -1:
-        spLevel = eval(content[-1].split()[-1])
-        if spLevel >= 2:
-            conf.env.DISTRO = "SLES"
-            supportedVersion = 1
-    elif content[0].find("openSUSE") != -1:
-        version = eval(content[1].split()[-1])
-        if version >= 12.1:
-            conf.env.DISTRO = "openSUSE"
-            supportedVersion = 1
-    if not supportedVersion:
-        conf.env.DISTRO = "unknown"
-else: conf.env.DISTRO = "unknown"
-if conf.env.DISTRO == "unknown": c = "YELLOW"
-else:                              c = "GREEN"
-conf.check_message_2(conf.env.DISTRO,c)
-conf.check_message_1('Detecting installation prefix')
-if Options.options.prefix == Options.default_prefix:
-       if conf.env.DISTRO == 'Windows':
-               conf.env.PREFIX = 'C:\\CloudStack'
-       elif _getuid() != 0: # not root
-               conf.env.PREFIX = _join(_expanduser("~"),"cloudstack")
-conf.check_message_2("%s"%conf.env.PREFIX,"GREEN")
-
-conf.check_tool('misc')
-
-conf.check_tool("gnu_dirs")
-if conf.env.DISTRO == 'Windows':
-       # waf uses slashes somewhere along the line in some paths.  we fix them 
on windows.
-       for pth in [ x for x in conf.env.get_merged_dict().keys() if 
x.endswith("DIR") ]:
-               if not pth: continue
-               if not conf.env[pth]: continue
-               conf.env[pth] = conf.env[pth].replace("/","\\")
-
-conf.check_tool('tar')
-try: conf.check_tool('mkisofs')
-except Configure.ConfigurationError,e:
-       raise Configure.ConfigurationError, "The program genisoimage (or 
mkisofs) could not be found.\nOn Linux: ./waf installrpmdeps or ./waf 
installdebdeps according to your distro's package format.\nOn Windows: Use 
cygwin to install the mkisofs package, then ensure that the program is in your 
PATH."
-conf.check_tool('java')
-
-conf.check_tool("python")
-conf.check_python_version((2,4,0))
-
-conf.check_message_1('Detecting Python MySQL module')
-try: import MySQLdb
-except ImportError,e:
-       raise Configure.ConfigurationError, "The Python MySQLdb module could 
not be found.\nOn Linux: ./waf installrpmdeps or ./waf installdebdeps according 
to your distro's package format.\nOn Windows: Install MySQL 5.1 on your 
machine, then install the Python MySQLdb module for Python %s.\nThe module for 
Python 2.6 / win32 / MySQL 5.1 is available here: 
http://soemin.googlecode.com/files/MySQL-python-1.2.3c1.win32-py2.6.exe"%conf.env.PYTHON_VERSION
-conf.check_message_2('MySQLdb','GREEN')
-conf.check_message_1('Database info for developer setup')
-for a in "DBHOST DBUSER DBPW".split(): conf.env[a] = getattr(Options.options, 
a, '')
-conf.check_message_2("user: %r, password: %r, host: 
%r"%(conf.env.DBUSER,conf.env.DBPW,conf.env.DBHOST),'GREEN')
-
-try: conf.check_tool("tomcat")
-except Configure.ConfigurationError,e:
-       conf.fatal("Tomcat directory %r not found.  Either install Tomcat using 
./waf installrpmdeps or ./waf installdebdeps, or manually install Tomcat to a 
directory in your system and set the environment variable TOMCAT_HOME to point 
to it."%conf.env.TOMCATHOME)
-
-conf.env.COMMONPATH = _join(conf.env.PACKAGE,"common")
-conf.env.AGENTPATH = _join(conf.env.PACKAGE,"agent")
-conf.env.CPPATH = _join(conf.env.PACKAGE,"console-proxy")
-conf.env.IPALLOCATORPATH = _join(conf.env.PACKAGE,"ipallocator")
-conf.env.MSPATH = _join(conf.env.PACKAGE,"management")
-conf.env.USAGEPATH = _join(conf.env.PACKAGE,"usage")
-conf.env.SETUPPATH = _join(conf.env.PACKAGE,"setup")
-conf.env.SERVERPATH = _join(conf.env.PACKAGE,"server")
-
-if conf.env.DISTRO in ['Windows','Mac']:
-       conf.env.MSENVIRON = conf.env.TOMCATHOME
-       conf.env.MSCONF  = _join(conf.env.TOMCATHOME,"conf")
-       conf.env.MSLOGDIR = _join(conf.env.TOMCATHOME,"logs")
-       conf.env.MSMNTDIR = _join(conf.env.TOMCATHOME,"mnt")
-        conf.env.JAVADIR = _join(conf.env.MSENVIRON,"lib")
-       conf.env.PREMIUMJAVADIR = conf.env.JAVADIR
-       conf.env.PLUGINJAVADIR = conf.env.JAVADIR
-       conf.env.SYSTEMJAVADIR = conf.env.JAVADIR
-else:
-       conf.env.MSENVIRON = _join(conf.env.DATADIR,conf.env.MSPATH)
-       conf.env.MSCONF    = _join(conf.env.SYSCONFDIR,conf.env.MSPATH)
-       conf.env.MSLOGDIR = _join(conf.env.LOCALSTATEDIR,"log",conf.env.MSPATH)
-       conf.env.MSMNTDIR = 
_join(conf.env.SHAREDSTATEDIR,conf.env.PACKAGE,"mnt")
-       conf.check_tool('compiler_cc')
-       conf.check_cc(lib='dl')
-       conf.check_tool('usermgmt')
-       conf.check_message_1('Determining management server user name')
-       msuser = getattr(Options.options, 'MSUSER', '')
-       if msuser:
-               conf.env.MSUSER = msuser
-               conf.check_message_2("%s (forced through 
--tomcat-user)"%conf.env.MSUSER,"GREEN")
-       else:
-               conf.env.MSUSER = conf.env.PACKAGE
-               conf.check_message_2("%s (Linux 
default)"%conf.env.MSUSER,"GREEN")
-       conf.check_tool("javadir")
-       conf.env.PREMIUMJAVADIR = 
_join(conf.env.JAVADIR,"%s-premium"%conf.env.PACKAGE)
-       conf.env.PLUGINJAVADIR = 
_join(conf.env.JAVADIR,"%s-plugins"%conf.env.PACKAGE)
-       conf.env.SYSTEMJAVADIR = "/usr/share/java"
-
-in_javadir = lambda name: _join(conf.env.JAVADIR,_basename(name)) # 
$PREFIX/share/java
-in_system_javadir = lambda name: _join(conf.env.SYSTEMJAVADIR,name) # 
/usr/share/java
-in_premiumjavadir = lambda name: _join(conf.env.PREMIUMJAVADIR,name) # 
$PREFIX/share/java/cloud-premium
-
-conf.env.COMMONLIBDIR = 
Utils.subst_vars(_join("${LIBDIR}","${COMMONPATH}"),conf.env)
-
-conf.env.AGENTLIBDIR = 
Utils.subst_vars(_join("${LIBDIR}","${AGENTPATH}"),conf.env)
-conf.env.AGENTSYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${AGENTPATH}"),conf.env)
-conf.env.AGENTLOGDIR = 
Utils.subst_vars(_join("${LOCALSTATEDIR}","log","${AGENTPATH}"),conf.env)
-
-conf.env.USAGELOGDIR = 
Utils.subst_vars(_join("${LOCALSTATEDIR}","log","${USAGEPATH}"),conf.env)
-conf.env.USAGESYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${USAGEPATH}"),conf.env)
-
-conf.env.CPLIBDIR = Utils.subst_vars(_join("${LIBDIR}","${CPPATH}"),conf.env)
-conf.env.CPSYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${CPPATH}"),conf.env)
-conf.env.CPLOGDIR = 
Utils.subst_vars(_join("${LOCALSTATEDIR}","log","${CPPATH}"),conf.env)
-
-conf.env.MSLOG = _join(conf.env.MSLOGDIR,"management-server.log")
-conf.env.AWSAPILOG = _join(conf.env.MSLOGDIR,"awsapi.log")
-conf.env.APISERVERLOG = _join(conf.env.MSLOGDIR,"api-server.log")
-conf.env.AGENTLOG = _join(conf.env.AGENTLOGDIR,"agent.log")
-conf.env.USAGELOG = _join(conf.env.USAGELOGDIR,"usage.log")
-conf.env.CPLOG = _join(conf.env.CPLOGDIR,"console-proxy.log")
-
-conf.env.SETUPDATADIR = 
Utils.subst_vars(_join("${DATADIR}","${SETUPPATH}"),conf.env)
-
-conf.env.SERVERSYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${SERVERPATH}"),conf.env)
-conf.env.PIDDIR = _join(conf.env.LOCALSTATEDIR,"run")
-conf.env.LOCKDIR = _join(conf.env.LOCALSTATEDIR,"lock","subsys")
-
-
-conf.check_message_1('Building classpaths')
-
-# == Here we build the run-time classpaths ==
-
-# The system classpath points to JARs we expect the user has installed using 
distro packages
-# not used for Windows and Mac (except for servlet-api.jar) because we install 
them from the thirdparty/ directory
-sysjars = list(systemjars['common'])
-if conf.env.DISTRO in systemjars.keys(): sysjars = sysjars + 
list(systemjars[conf.env.DISTRO])
-conf.env.SYSTEMJARS = " ".join(sysjars) # used by build-classpath in the 
initscripts
-conf.env.SYSTEMCLASSPATH = pathsep.join([ in_system_javadir(x) for x in 
sysjars ]) # used for compile, waf run and simulate_agent
-
-# the deps classpath points to JARs that are installed in the cloud-deps 
package
-# these will install on Tomcat6's lib/ directory on Windows and Mac
-depsclasspath = [ in_javadir(_basename(x)) for x in 
_glob(_join(conf.srcdir,"deps","*.jar")) ]
-conf.env.DEPSCLASSPATH = pathsep.join(depsclasspath)
-
-# the MS classpath points to JARs required to run the management server
-msclasspath = [ in_javadir("%s-%s.jar"%(conf.env.PACKAGE,x)) for x in "utils 
api core server server-extras core-extras vmware-base ovm 
dp-user-concentrated-pod dp-user-dispersing host-allocator-random plugin-f5 
plugin-netscaler plugin-ovs plugin-srx storage-allocator-random 
user-authenticator-ldap user-authenticator-md5 user-authenticator-plaintext 
vmware plugin-hypervisor-xen plugin-nicira-nvp plugin-elb plugin-netapp 
plugin-bigswitch-vns".split() ]
-conf.env.MSCLASSPATH = pathsep.join(msclasspath)
-
-# the agent and simulator classpaths point to JARs required to run these two 
applications
-agentclasspath = [ in_javadir("%s-%s.jar"%(conf.env.PACKAGE,x)) for x in 
"utils api core server server-extras agent console-common console-proxy 
core-extras agent-extras plugin-hypervisor-kvm".split() ]
-agentclasspath.append(in_javadir("jna.jar"))
-conf.env.AGENTCLASSPATH = pathsep.join(agentclasspath)
-conf.env.AGENTSIMULATORCLASSPATH = 
pathsep.join(agentclasspath+[in_javadir("%s-agent-simulator.jar"%conf.env.PACKAGE)])
-
-usageclasspath = [ in_javadir("%s-%s.jar"%(conf.env.PACKAGE,x)) for x in 
"utils api core server server-extras usage core-extras".split() ]
-conf.env.USAGECLASSPATH = pathsep.join(usageclasspath)
-
-# the premium classpath was ELIMINATED
-# CloudStack now detects the premium classpath at runtime by iterating through 
the JAR files in @PREMIUMJAVADIR@
-# premium JARs will install on Tomcat6's lib/ directory on Windows and Mac
-
-# The compile path is composed of the
-# 1. source directories (without including the JARs)
-# JARs are not included because in case of parallel compilation (IOW, all the 
time), javac picks up half-written JARs and die
-compilecp = []# list(srcdirs)
-# 2.b) the deps/ directory in the source if on Linux
-# 2.a) the thirdparty/ directory if available
-if conf.env.DISTRO in ["Windows","Mac"]:
-       pass
-else:
-       compilecp+= _glob(_join("deps","*.jar"))
-compilecp+= _glob(_join("cloudstack-proprietary","thirdparty","*.jar"))
-# 3. the system classpath (system-installed JARs)
-compilecp+= [ conf.env.SYSTEMCLASSPATH ]
-compilecp+= _glob(_join(conf.env.TOMCATHOME,'bin',"*.jar"))
-compilecp+= _glob(_join(conf.env.TOMCATHOME,'lib',"*.jar"))
-conf.env.CLASSPATH = pathsep.join(compilecp)
-conf.check_message_2('Done','GREEN')
-
-# log4j config and property config files require backslash escapes on Windows
-
-conf.env.COMMONLIBDIR = 
Utils.subst_vars(_join("${LIBDIR}","${COMMONPATH}"),conf.env)
-
-conf.env.AGENTLIBDIR = 
Utils.subst_vars(_join("${LIBDIR}","${AGENTPATH}"),conf.env)
-conf.env.AGENTSYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${AGENTPATH}"),conf.env)
-conf.env.AGENTLOGDIR = 
Utils.subst_vars(_join("${LOCALSTATEDIR}","log","${AGENTPATH}"),conf.env)
-
-conf.env.USAGELOGDIR = 
Utils.subst_vars(_join("${LOCALSTATEDIR}","log","${USAGEPATH}"),conf.env)
-conf.env.USAGESYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${USAGEPATH}"),conf.env)
-
-conf.env.CPLIBDIR = Utils.subst_vars(_join("${LIBDIR}","${CPPATH}"),conf.env)
-conf.env.CPSYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${CPPATH}"),conf.env)
-conf.env.CPLOGDIR = 
Utils.subst_vars(_join("${LOCALSTATEDIR}","log","${CPPATH}"),conf.env)
-
-conf.env.CLIPATH = _join(conf.env.PACKAGE,"cli")
-
-conf.env.IPALLOCATORLIBDIR = 
Utils.subst_vars(_join("${LIBDIR}","${IPALLOCATORPATH}"),conf.env)
-conf.env.IPALLOCATORSYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${IPALLOCATORPATH}"),conf.env)
-conf.env.IPALLOCATORLOGDIR = 
Utils.subst_vars(_join("${LOCALSTATEDIR}","log","${IPALLOCATORPATH}"),conf.env)
-
-conf.env.MSLOG = _join(conf.env.MSLOGDIR,"management-server.log")
-conf.env.APISERVERLOG = _join(conf.env.MSLOGDIR,"api-server.log")
-conf.env.AGENTLOG = _join(conf.env.AGENTLOGDIR,"agent.log")
-conf.env.USAGELOG = _join(conf.env.USAGELOGDIR,"usage.log")
-conf.env.CPLOG = _join(conf.env.CPLOGDIR,"console-proxy.log")
-conf.env.IPALOCATORLOG = _join(conf.env.IPALLOCATORLOGDIR,"ipallocator.log")
-
-conf.env.SETUPDATADIR = 
Utils.subst_vars(_join("${DATADIR}","${SETUPPATH}"),conf.env)
-
-conf.env.CLIDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${CLIPATH}"),conf.env)
-
-conf.env.SERVERSYSCONFDIR = 
Utils.subst_vars(_join("${SYSCONFDIR}","${SERVERPATH}"),conf.env)
-
-if conf.env.DISTRO in ["Windows"]:
-       for log in "MSLOG APISERVERLOG AGENTLIBDIR USAGELOG AGENTLOG".split(): 
conf.env[log] = conf.env[log].replace("\\","\\\\")
-
-no_java_class = lambda x: 
conf.check_java_class(x,with_classpath=conf.env.CLASSPATH) != 0
-def require_dependency(javacls,packagenames):
-       if no_java_class(javacls):
-               conf.fatal("Cannot find the Java class %s (available in the 
distro packages: %s)"%(
-                       javacls, ", ".join(packagenames)))
-def check_dependencies(deps):
-       for d in deps:
-               cls,pkgs = d[0],d[1:]
-               require_dependency(cls,pkgs)
-
-if not getattr(Options.options, 'NODEPCHECK', ''): 
check_dependencies(hard_deps)
-
-Utils.pprint("WHITE","Configure finished.  Use 'python waf showconfig' to show 
the configure-time environment.")

Reply via email to