####################################################################### # # Copyright (C) 2004 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. # # Author: Juan Carlos Luciani # ####################################################################### AC_INIT(c-sharp-net-credential/NetCredential.cs) AC_CANONICAL_SYSTEM AM_INIT_AUTOMAKE(clientpasswordmanager, 0.1.1) RELEASE=`date +%Y%m%d_%H%M` AC_SUBST(RELEASE) AM_MAINTAINER_MODE # # Check for a valid C# compiler # AC_CHECK_PROG(CSC, csc, csc) test -z "$CSC" && AC_CHECK_PROG(CSC, mcs, mcs) test -z "$CSC" && AC_MSG_ERROR([no acceptable C Sharp compiler found in \$PATH]) case $CSC in # # Mono-specific configuration # mcs) CSC_EXEFLAG=/target:exe CSC_LIBFLAG=/target:library CSC_EXEFLAG=/target:exe CSC_WINEXEFLAG=/target:winexe CSCFLAGS='/d:MONO /warn:4 /d:TRACE' CSCFLAGS_DEBUG="/debug+ /d:DEBUG" CSCFLAGS_OPTIMIZE="/optimize+" MONO=mono MONO_DEBUG='mono --debug' MONO_PATH= SYSTEM_XML='System.Xml.dll' ;; # # .NET-specific configuration # csc) CSC_EXEFLAG=/target:exe CSC_LIBFLAG=/target:library CSC_EXEFLAG=/target:exe CSC_WINEXEFLAG=/target:winexe CSCFLAGS='/d:DOTNET /warn:4 /d:TRACE /nologo' CSCFLAGS_DEBUG="/debug+ /d:DEBUG" CSCFLAGS_OPTIMIZE="/optimize+" MONO= MONO_DEBUG= MONO_PATH= SYSTEM_XML='System.XML.dll' ;; esac AC_SUBST(CSC) AC_SUBST(CSC_EXEFLAG) AC_SUBST(CSC_LIBFLAG) AC_SUBST(CSC_WINEXEFLAG) AC_SUBST(CSCFLAGS) AC_SUBST(MONO) AC_SUBST(MONO_PATH) AC_SUBST(SYSTEM_XML) SRCDIR='$(top_srcdir)' DOCDIR="$SRCDIR/doc" AC_SUBST(SRCDIR) AC_SUBST(DOCDIR) EMPTY= SPACE='$(EMPTY) $(EMPTY)' AC_SUBST(EMPTY) AC_SUBST(SPACE) # # Check for a valid operating system # case $host_os in linux*) TARGET_OS='linux' ;; cygwin*) TARGET_OS='windows' ;; *) AC_MSG_ERROR([Unknown host_os: $host_os]) ;; esac AC_SUBST(TARGET_OS) AM_CONDITIONAL(LINUX, test "$TARGET_OS" = "linux") AM_CONDITIONAL(WINDOWS, test "$TARGET_OS" = "windows") # # Set platform-specific variables # case $TARGET_OS in # # Linux-specific configuration # linux) # # Set variables # COMMON_CLEAN_FILES='' ICON_EXT='.ico' ICON_FLAG='/resource:' PLATFORM_SUBDIRS=$LINUX_SUBDIRS SEP='/' ;; # # Windows-specific configuration # windows) COMMON_CLEAN_FILES='*.suo */*.suo *.csproj.user */*.csproj.user bin obj */bin */obj *.xml */*.xml *.pdb */*.pdb' ICON_EXT='.ico' ICON_FLAG='/win32icon:' PLATFORM_SUBDIRS=$WINDOWS_SUBDIRS SEP='$(EMPTY)\\$(EMPTY)' ;; esac AC_SUBST(COMMON_CLEAN_FILES) AC_SUBST(ICON_EXT) AC_SUBST(ICON_FLAG) AC_SUBST(PLATFORM_SUBDIRS) AC_SUBST(SEP) # # Run standard macros # AM_PROG_CC_STDC AC_PROG_INSTALL AC_HEADER_STDC # # Handle --enable-debug # AC_ARG_ENABLE(debug, [ --enable-debug configure the Makefiles to build in DEBUG mode], [case "${enableval}" in yes) enable_debug=true ;; no) enable_debug=false ;; *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;; esac],[enable_debug=false]) AM_CONDITIONAL(DEBUG, test x$enable_debug = xtrue) if test "$enable_debug" = "true" then # Build debug version. CFLAGS="$CFLAGS_DEBUG $CFLAGS" CSCFLAGS="$CSCFLAGS_DEBUG $CSCFLAGS" CXXFLAGS="$CXXFLAGS_DEBUG $CXXFLAGS" DEVENV_CONFIGURATION=Debug MONO=$MONO_DEBUG else # Build optimized version. CFLAGS="$CFLAGS_OPTIMIZE $CFLAGS" CSCFLAGS="$CSCFLAGS_OPTIMIZE $CSCFLAGS" CXXFLAGS="$CXXFLAGS_OPTIMIZE $CXXFLAGS" DEVENV_CONFIGURATION=Release fi AC_SUBST(CSCFLAGS) AC_SUBST(DEVENV_CONFIGURATION) # # Configure PKG_CONFIG # AC_PATH_PROG(PKG_CONFIG, pkg-config, no) if test "x$PKG_CONFIG" = "xno"; then AC_MSG_ERROR([You need to install pkg-config]) fi # # Configure files # AC_OUTPUT([ Makefile c-sharp-net-credential/Makefile c-sharp-password-dialog/Makefile c-sharp-username-dialog/Makefile c-sharp-utilities/Makefile package/Makefile package/windows/Makefile package/windows/clientpasswordmanager-msm/Makefile package/linux/Makefile package/linux/clientpasswordmanager.spec ])