####################################################################### # # Copyright (C) 2006 Novell, Inc. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public # License as published by the Free Software Foundation; either # version 2 of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public # License along with this program; if not, write to the Free # Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # ####################################################################### SUBDIRS = src DIST_SUBDIRS = src external tomcat5 linux manifest templates windows EXTRA_DIST = README \ TODO \ web.xml ROOT = ../ LIBDIR = $(ROOT)/$(LIB) IDENT_ABSTRACTION_DIR = /usr/share/java/identity-abstraction AXIS_JARS_DIR = external MANIFEST_DIR = manifest JAVAROOT = . JAVAC= javac WEBAPP_NAME = CasaAuthTokenSvc WEBAPP_EXT = war MODULE_NAME = CasaAuthToken MODULE_EXT = jar AUTH_TOKEN_SETTINGS_EDITOR_MODULE_NAME = CasaAuthTokenSettingsEditor IDEN_TOKEN_SETTINGS_EDITOR_MODULE_NAME = CasaIdenTokenSettingsEditor SVC_SETTINGS_EDITOR_MODULE_NAME = CasaSvcSettingsEditor AUTH_POLICY_EDITOR_MODULE_NAME = CasaAuthPolicyEditor JAVAFILES = src/com/novell/casa/authtoksvc/ProtoDefs.java \ src/com/novell/casa/authtoksvc/AuthMechConfig.java \ src/com/novell/casa/authtoksvc/SvcConfig.java \ src/com/novell/casa/authtoksvc/IdenTokenConfig.java \ src/com/novell/casa/authtoksvc/AuthTokenConfig.java \ src/com/novell/casa/authtoksvc/EnabledSvcsConfig.java \ src/com/novell/casa/authtoksvc/AuthMechanism.java \ src/com/novell/casa/authtoksvc/WSSecurity.java \ src/com/novell/casa/authtoksvc/SessionToken.java \ src/com/novell/casa/authtoksvc/Authenticate.java \ src/com/novell/casa/authtoksvc/RpcMethod.java \ src/com/novell/casa/authtoksvc/Rpc.java \ src/com/novell/casa/authtoksvc/GetAuthPolicy.java \ src/com/novell/casa/authtoksvc/Base64Coder.java \ src/com/novell/casa/authtoksvc/AuthReqMsg.java \ src/com/novell/casa/authtoksvc/AuthRespMsg.java \ src/com/novell/casa/authtoksvc/IdentityToken.java \ src/com/novell/casa/authtoksvc/CasaIdentityToken.java \ src/com/novell/casa/authtoksvc/AuthToken.java \ src/com/novell/casa/authtoksvc/GetAuthPolicyReqMsg.java \ src/com/novell/casa/authtoksvc/GetAuthPolicyRespMsg.java \ src/com/novell/casa/authtoksvc/GetAuthToken.java \ src/com/novell/casa/authtoksvc/GetAuthTokReqMsg.java \ src/com/novell/casa/authtoksvc/GetAuthTokRespMsg.java \ src/com/novell/casa/authtoksvc/Krb5Authenticate.java \ src/com/novell/casa/authtoksvc/PwdAuthenticate.java \ src/com/novell/casa/authtoksvc/IVerifySetting.java \ src/com/novell/casa/authtoksvc/SettingsFileUtil.java \ src/com/novell/casa/authtoksvc/SettingsFileSAXHandler.java \ src/com/novell/casa/authtoksvc/AuthPolicyEditor.java \ src/com/novell/casa/authtoksvc/AuthTokenSettingsEditor.java \ src/com/novell/casa/authtoksvc/IdenTokenSettingsEditor.java \ src/com/novell/casa/authtoksvc/SvcSettingsEditor.java BUILDDIR = build AUTHTOKEN_FILES = -C $(BUILDDIR)/webapp/WEB-INF/classes com AUTH_TOKEN_SETTINGS_EDITOR_FILES = -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/IVerifySetting.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/SettingsFileUtil.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/AuthTokenSettingsEditor.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/AuthTokenConfig.class IDEN_TOKEN_SETTINGS_EDITOR_FILES = -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/IVerifySetting.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/SettingsFileUtil.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/IdenTokenSettingsEditor.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/IdenTokenConfig.class SVC_SETTINGS_EDITOR_FILES = -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/IVerifySetting.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/SettingsFileUtil.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/SvcSettingsEditor.class \ -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/SvcConfig.class AUTH_POLICY_EDITOR_FILES = -C $(BUILDDIR)/webapp/WEB-INF/classes com/novell/casa/authtoksvc/AuthPolicyEditor.class WEBAPP = $(WEBAPP_NAME).$(WEBAPP_EXT) AUTH_TOKEN_SETTINGS_EDITOR = $(AUTH_TOKEN_SETTINGS_EDITOR_MODULE_NAME).$(MODULE_EXT) IDEN_TOKEN_SETTINGS_EDITOR = $(IDEN_TOKEN_SETTINGS_EDITOR_MODULE_NAME).$(MODULE_EXT) SVC_SETTINGS_EDITOR = $(SVC_SETTINGS_EDITOR_MODULE_NAME).$(MODULE_EXT) AUTH_POLICY_EDITOR = $(AUTH_POLICY_EDITOR_MODULE_NAME).$(MODULE_EXT) CLASSES = $(addprefix $(BUILDDIR)/, $(JAVAFILES:%.java=%.class)) #AXIS_LIBS = $(AXIS_JARS_DIR)/axis.jar:$(AXIS_JARS_DIR)/axis-ant.jar:$(AXIS_JARS_DIR)/commons-discovery-0.2.jar:$(AXIS_JARS_DIR)/commons-logging-1.0.4.jar:$(AXIS_JARS_DIR)/commons-logging-api.jar:$(AXIS_JARS_DIR)/jaxrpc.jar:$(AXIS_JARS_DIR)/log4j-1.2.8.jar:$(AXIS_JARS_DIR)/saaj.jar:$(AXIS_JARS_DIR)/wsdl4j-1.5.1.jar:$(AXIS_JARS_DIR)/wss4j-1.5.0.jar:$(AXIS_JARS_DIR)/xalan.jar:$(AXIS_JARS_DIR)/xercesImpl.jar:$(AXIS_JARS_DIR)/xml-apis.jar:$(AXIS_JARS_DIR)/xmlsec-1.2.1.jar AXIS_LIBS = $(AXIS_JARS_DIR)/axis.jar:$(AXIS_JARS_DIR)/saaj.jar:$(AXIS_JARS_DIR)/wss4j-1.5.0.jar:$(AXIS_JARS_DIR)/xmlsec-1.2.1.jar #AXIS_LIBS = $(AXIS_JARS_DIR)/wss4j-1.5.0.jar LIBS = /usr/share/java/servletapi5.jar:/usr/share/java/xerces-j2.jar CLASSPATH = $(AXIS_LIBS):$(IDENT_ABSTRACTION_DIR)/identity-abstraction.jar:$(IDENT_ABSTRACTION_DIR)/bandit-util.jar:$(LIBS) CUR_DIR := $(shell pwd) all: $(BUILDDIR)/$(WEBAPP) $(BUILDDIR)/$(MODULE_NAME).$(MODULE_EXT) $(BUILDDIR)/$(AUTH_TOKEN_SETTINGS_EDITOR) $(BUILDDIR)/$(IDEN_TOKEN_SETTINGS_EDITOR) $(BUILDDIR)/$(SVC_SETTINGS_EDITOR) $(BUILDDIR)/$(AUTH_POLICY_EDITOR) $(BUILDDIR)/%.class: %.java @echo [======== Compiling $@ ========] $(JAVAC) -g -sourcepath src -classpath $(CLASSPATH) -d $(BUILDDIR)/webapp/WEB-INF/classes $< # The following two lines may need to be added below before we jar-up the war for builds where there is no identity-abstraction install # cp $(IDENT_ABSTRACTION_DIR)/*.jar $(BUILDDIR)/webapp/WEB-INF/lib/ # rm $(BUILDDIR)/webapp/WEB-INF/lib/identity-abstraction.jar $(BUILDDIR)/$(WEBAPP): $(BUILDDIR) $(CLASSES) @echo [======== Creating Webapp $@ ========] cp web.xml $(BUILDDIR)/webapp/WEB-INF/web.xml cp templates/svc.settings $(BUILDDIR)/webapp/WEB-INF/conf/svc.settings cp templates/authtoken.settings $(BUILDDIR)/webapp/WEB-INF/conf/authtoken.settings cp templates/identoken.settings $(BUILDDIR)/webapp/WEB-INF/conf/identoken.settings cp linux/crypto.properties $(BUILDDIR)/webapp/WEB-INF/classes/crypto.properties cp src/com/novell/casa/authtoksvc/Krb5_mechanism.settings $(BUILDDIR)/webapp/WEB-INF/conf/installed_auth_mechanisms/Krb5Authenticate/mechanism.settings cp src/com/novell/casa/authtoksvc/Pwd_mechanism.settings $(BUILDDIR)/webapp/WEB-INF/conf/installed_auth_mechanisms/PwdAuthenticate/mechanism.settings cp $(AXIS_JARS_DIR)/*.jar $(BUILDDIR)/webapp/WEB-INF/lib/ ls $(BUILDDIR)/webapp/WEB-INF/lib/ jar cvf $(BUILDDIR)/$(WEBAPP) -C $(BUILDDIR)/webapp . cp $(BUILDDIR)/$(WEBAPP) $(LIBDIR)/java/ $(BUILDDIR)/$(MODULE_NAME).$(MODULE_EXT): $(BUILDDIR) $(CLASSES) @echo [======== Jarring $@ ========] jar cvf $(BUILDDIR)/$(MODULE_NAME).$(MODULE_EXT) $(AUTHTOKEN_FILES) cp $(BUILDDIR)/$(MODULE_NAME).$(MODULE_EXT) $(LIBDIR)/java/ $(BUILDDIR)/$(AUTH_TOKEN_SETTINGS_EDITOR): $(BUILDDIR) $(CLASSES) @echo [======== Jarring $@ ========] jar cvmf $(MANIFEST_DIR)/AuthTokenSettingsEditor.txt $(BUILDDIR)/$(AUTH_TOKEN_SETTINGS_EDITOR) $(AUTH_TOKEN_SETTINGS_EDITOR_FILES) cp $(BUILDDIR)/$(AUTH_TOKEN_SETTINGS_EDITOR) $(LIBDIR)/java/ $(BUILDDIR)/$(IDEN_TOKEN_SETTINGS_EDITOR): $(BUILDDIR) $(CLASSES) @echo [======== Jarring $@ ========] jar cvmf $(MANIFEST_DIR)/IdenTokenSettingsEditor.txt $(BUILDDIR)/$(IDEN_TOKEN_SETTINGS_EDITOR) $(IDEN_TOKEN_SETTINGS_EDITOR_FILES) cp $(BUILDDIR)/$(IDEN_TOKEN_SETTINGS_EDITOR) $(LIBDIR)/java/ $(BUILDDIR)/$(SVC_SETTINGS_EDITOR): $(BUILDDIR) $(CLASSES) @echo [======== Jarring $@ ========] jar cvmf $(MANIFEST_DIR)/SvcSettingsEditor.txt $(BUILDDIR)/$(SVC_SETTINGS_EDITOR) $(SVC_SETTINGS_EDITOR_FILES) cp $(BUILDDIR)/$(SVC_SETTINGS_EDITOR) $(LIBDIR)/java/ $(BUILDDIR)/$(AUTH_POLICY_EDITOR): $(BUILDDIR) $(CLASSES) @echo [======== Jarring $@ ========] jar cvmf $(MANIFEST_DIR)/AuthPolicyEditor.txt $(BUILDDIR)/$(AUTH_POLICY_EDITOR) $(AUTH_POLICY_EDITOR_FILES) cp $(BUILDDIR)/$(AUTH_POLICY_EDITOR) $(LIBDIR)/java/ $(BUILDDIR): [ -d $(BUILDDIR) ] || mkdir -p $(BUILDDIR) [ -d $(BUILDDIR)/webapp ] || mkdir -p $(BUILDDIR)/webapp [ -d $(BUILDDIR)/webapp/WEB-INF ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF [ -d $(BUILDDIR)/webapp/WEB-INF/classes ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF/classes [ -d $(BUILDDIR)/webapp/WEB-INF/lib ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF/lib [ -d $(BUILDDIR)/webapp/WEB-INF/conf ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF/conf [ -d $(BUILDDIR)/webapp/WEB-INF/conf/enabled_services ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF/conf/enabled_services [ -d $(BUILDDIR)/webapp/WEB-INF/conf/auth_mechanisms ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF/conf/auth_mechanisms [ -d $(BUILDDIR)/webapp/WEB-INF/conf/installed_auth_mechanisms ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF/conf/installed_auth_mechanisms [ -d $(BUILDDIR)/webapp/WEB-INF/conf/installed_auth_mechanisms/Krb5Authenticate ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF/conf/installed_auth_mechanisms/Krb5Authenticate [ -d $(BUILDDIR)/webapp/WEB-INF/conf/installed_auth_mechanisms/PwdAuthenticate ] || mkdir -p $(BUILDDIR)/webapp/WEB-INF/conf/installed_auth_mechanisms/PwdAuthenticate [ -d $(LIBDIR) ] || mkdir -p $(LIBDIR) [ -d $(LIBDIR)/java ] || mkdir -p $(LIBDIR)/java install-exec-local: uninstall-local: #installcheck-local: install clean-local: if [ -d $(BUILDDIR) ]; then rm -rf $(BUILDDIR); fi if [ -f $(LIBDIR)/java/$(MODULE_NAME).$(MODULE_EXT) ]; then rm -f $(LIBDIR)/java/$(MODULE_NAME).$(MODULE_EXT); fi if [ -f $(LIBDIR)/java/$(WEBAPP) ]; then rm -f $(LIBDIR)/java/$(WEBAPP); fi distclean-local: maintainer-clean-local: rm -f Makefile.in rm -f Makefile