Automake based build system
authorSam Hartman <hartmans@debian.org>
Mon, 9 May 2011 13:55:23 +0000 (09:55 -0400)
committerSam Hartman <hartmans@debian.org>
Mon, 9 May 2011 13:55:23 +0000 (09:55 -0400)
.gitignore [new file with mode: 0644]
Makefile.am [new file with mode: 0644]
Makefile.in [deleted file]
configure.ac [new file with mode: 0644]

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..1d4ce1b
--- /dev/null
@@ -0,0 +1,13 @@
+*.o
+*~
+autom4te.cache
+missing
+install-sh
+depcomp
+configure
+Makefile.in
+.deps
+Makefile
+config.log
+config.status
+aclocal.m4
diff --git a/Makefile.am b/Makefile.am
new file mode 100644 (file)
index 0000000..b3bd043
--- /dev/null
@@ -0,0 +1,40 @@
+IDL_FLAGS = -I $(MOZ_IDLDIR)/stable 
+.idl.h:
+       $(XPIDL) -m header $(IDL_FLAGS)$^
+
+.idl.xpt:
+       $(XPIDL) -m typelib $(IDL_FLAGS)$^
+
+AM_CXXFLAGS = $(XUL_CFLAGS) -std=gnu++0x -fPIC -DPIC
+AM_LDFLAGS = $(XUL_LDFLAGS) $(XUL_LIBS)
+
+
+noinst_PROGRAMS = libmoonshot.so
+
+libmoonshot_so_SOURCES =               nsHttpMoonshot.cpp \
+               nsMoonshotSessionState.cpp \
+               nsHttpMoonshotModule.cpp
+
+BUILT_SOURCES = nsIHttpMoonshot.h
+
+libmoonshot_so_LINK = $(CXX) -o $@ -shared 
+libmoonshot_so_LDADD = $(AM_LDFLAGS) 
+
+all: moonshot.xpi
+
+XPT = nsIHttpMoonshot.xpt
+
+XPI_INSTALL = $(srcdir)/install.js $(srcdir)/install.rdf
+
+
+moonshot.xpi: $(noinst_PROGRAMS) $(XPT) $(XPI_INSTALL)
+       test -d xpi ||rm -rf xpi
+       mkdir -p xpi/components 
+       cp libmoonshot.so xpi/components
+       cp $(XPI_INSTALL) xpi
+       cp $(XPT) xpi/components
+       cd xpi&&zip ../$@ -r .
+       rm -rf xpi
+
+MOSTLYCLEANFILES = $(BUILT_SOURCES) $(XPT)
+CLEANFILES = moonshot.xpi
diff --git a/Makefile.in b/Makefile.in
deleted file mode 100644 (file)
index 42bfb40..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-# vim:set ts=8 sw=8 sts=8 noet:
-# ***** BEGIN LICENSE BLOCK *****
-# Version: MPL 1.1/GPL 2.0/LGPL 2.1
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (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.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# The Original Code is negotiateauth.
-#
-# The Initial Developer of the Original Code is
-# Daniel Kouril <kouril@ics.muni.cz>
-#
-# Portions created by the Initial Developer are Copyright (C) 2003
-# the Initial Developer. All Rights Reserved.
-#
-# Contributor(s):
-#   Daniel Kouril <kouril@ics.muni.cz> (original author)
-#   Wyllys Ingersoll <wyllys.ingersoll@sun.com>
-#   Christopher Nebergall <cneberg@sandia.gov>
-#   Darin Fisher <darin@meer.net>
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 2 or later (the "GPL"), or
-# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
-# in which case the provisions of the GPL or the LGPL are applicable instead
-# of those above. If you wish to allow use of your version of this file only
-# under the terms of either the GPL or the LGPL, and not to allow others to
-# use your version of this file under the terms of the MPL, indicate your
-# decision by deleting the provisions above and replace them with the notice
-# and other provisions required by the GPL or the LGPL. If you do not delete
-# the provisions above, a recipient may use your version of this file under
-# the terms of any one of the MPL, the GPL or the LGPL.
-#
-# ***** END LICENSE BLOCK *****
-
-DEPTH          = ../..
-topsrcdir      = @top_srcdir@
-srcdir         = @srcdir@
-VPATH          = @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-MODULE         = moonshot
-LIBRARY_NAME   = moonshot
-IS_COMPONENT   = 1
-#EXPORT_LIBRARY        = 1
-#MODULE_NAME   = module
-#LIBXUL_LIBRARY = 1
-
-REQUIRES       = \
-               xpcom \
-               string \
-               necko \
-               pref \
-               $(NULL)
-
-CPPSRCS                = \
-               nsHttpMoonshot.cpp \
-               nsMoonshotSessionState.cpp \
-               nsHttpMoonshotModule.cpp \
-               $(NULL)
-
-XPIDLSRCS      = \
-               nsIHttpMoonshot.idl \
-               $(NULL)
-
-EXTRA_DSO_LDOPTS = \
-               $(MOZ_COMPONENT_LIBS) \
-               -lgssapi_krb5 \
-               -lxpcomglue_s \
-               $(NULL)
-
-# XXX:
-FORCE_SHARED_LIB = 1
-
-include $(topsrcdir)/config/rules.mk
-
-libs xpi::
-       mkdir -p xpi/components
-       cp lib$(LIBRARY_NAME).so $(XPIDL_GEN_DIR)/$(LIBRARY_NAME).xpt xpi/components
-       cp $(srcdir)/install.js $(srcdir)/install.rdf xpi
-       cd xpi && $(ZIP) -r ../$(LIBRARY_NAME).xpi *
diff --git a/configure.ac b/configure.ac
new file mode 100644 (file)
index 0000000..e15f1fb
--- /dev/null
@@ -0,0 +1,24 @@
+AC_PREREQ(2.66)
+AC_INIT([firefox-moonshot],[0.0.1],
+[bugs@project-moonshot.org], [Moonshot Firefox extension])
+AM_INIT_AUTOMAKE([1.11 foreign])
+AC_PROG_CXX
+AC_PROG_RANLIB
+
+PKG_CHECK_MODULES(XUL, libxul)
+MOZ_SDKDIR=`pkg-config libxul --variable sdkdir`
+MOZ_IDLDIR=`pkg-config libxul --variable idldir`
+# We need to override cflags for unstable APIs
+XUL_CFLAGS=`pkg-config --cflags libxul --define-variable=includetype=unstable`
+AC_SUBST([MOZ_IDLDIR])
+AC_SUBST([MOZ_SDKDIR])
+AC_PATH_PROG([XPIDL], [xpidl], false, [$MOZ_SDKDIR/bin$PATH_SEPARATOR$PATH])
+if [ $XPIDL = "false" ] ;then
+   AC_ERROR([Couldn't find xpidl])
+fi
+
+AC_CHECK_LIB([gssapi_krb5], [gss_init_sec_context])
+
+AC_CHECK_HEADERS(gssapi.h gssapi_ext.h)
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT