#*=====================================================================*/
#*    serrano/prgm/project/scribe/apache/Makefile                      */
#*    -------------------------------------------------------------    */
#*    Author      :  Manuel Serrano                                    */
#*    Creation    :  Thu Nov 22 09:02:50 2001                          */
#*    Last change :  Fri Dec 14 06:42:00 2001 (serrano)                */
#*    Copyright   :  2001 Manuel Serrano                               */
#*    -------------------------------------------------------------    */
#*    The Makefile to build the Scribe Apache module                   */
#*=====================================================================*/

#*---------------------------------------------------------------------*/
#*    Standard Scribe configuration                                    */
#*---------------------------------------------------------------------*/
include ../Makefile.scrconfig

#*---------------------------------------------------------------------*/
#*    Paths                                                            */
#*---------------------------------------------------------------------*/
SCRIBELIBDIR=$(SCRIBEDIR)/lib

#*---------------------------------------------------------------------*/
#*    Compilers                                                        */
#*---------------------------------------------------------------------*/
APXS		= apxs

#*---------------------------------------------------------------------*/
#*    Population                                                       */
#*---------------------------------------------------------------------*/
POPULATION	= driver.scm mod_scribe.c testit.c \
                  testit.scr \
                  README scribe.conf.tpl Makefile

#*---------------------------------------------------------------------*/
#*    all                                                              */
#*---------------------------------------------------------------------*/
all: scribe.conf mod

#*---------------------------------------------------------------------*/
#*    mod                                                              */
#*---------------------------------------------------------------------*/
mod: $(SCRIBELIBDIR)/mod_scribe.so

$(SCRIBELIBDIR)/mod_scribe.so: mod_scribe.o driver.o
	$(LD) -o $(SCRIBELIBDIR)/mod_scribe.so mod_scribe.o driver.o \
                 $(LIBDIR)/libbigloo.so \
                 $(LIBDIR)/libgc.so \
                 $(SCRIBELIBDIR)/libscribeapi.so \
                 $(SCRIBELIBDIR)/libscribehtml.so \
                 $(SCRIBELIBDIR)/libscribehtmlgui.so 

#*---------------------------------------------------------------------*/
#*    testit                                                           */
#*---------------------------------------------------------------------*/
testit: testit.o driver.o
	$(CC) -o testit testit.o driver.o \
              $(LIBDIR)/libbigloo.so \
              $(LIBDIR)/libgc.so \
              $(SCRIBELIBDIR)/libscribeapi.so \
              $(SCRIBELIBDIR)/libscribehtml.so \
              $(SCRIBELIBDIR)/libscribehtmlgui.so \
y             $(EXTRALIBS)

#*---------------------------------------------------------------------*/
#*    Object files                                                     */
#*---------------------------------------------------------------------*/
mod_scribe.o: mod_scribe.c
	$(APXS) -c mod_scribe.c && /bin/rm mod_scribe.so

driver.o: driver.scm
	bigloo -c driver.scm -L $(SCRIBELIBDIR) \
               -copt -DBIGLOO_MAIN=bgl_scribe_driver_initialize \
               -copt -DBIGLOO_EXIT= \
               -copt -Dbigloo_main=bgl_scribe_driver_main

testit.o: testit.c
	$(CC) testit.c -c

#*---------------------------------------------------------------------*/
#*    scribe.conf                                                      */
#*---------------------------------------------------------------------*/
scribe.conf: scribe.conf.tpl
	(libdir=`echo $(SCRIBELIBDIR) | sed 's/\//|/g'`; \
	 cat scribe.conf.tpl | \
            sed s/SCRIBELIBDIR/$$libdir/ | \
            sed 's/|/\//g' > scribe.conf)

#*---------------------------------------------------------------------*/
#*    pop ...                                                          */
#*---------------------------------------------------------------------*/
pop:
	@ echo $(POPULATION:%=apache/%)

#*---------------------------------------------------------------------*/
#*    Cleaning                                                         */
#*---------------------------------------------------------------------*/
clean:
	/bin/rm -f driver.o mod_scribe.o testi testit.o scribe.conf
	/bin/rm -f $(SCRIBELIBDIR)/mod_scribe.so
	/bin/rm -f testit


