#*=====================================================================*/
#*    serrano/prgm/project/scribe/scribeapi/Makefile                   */
#*    -------------------------------------------------------------    */
#*    Author      :  Manuel Serrano                                    */
#*    Creation    :  Wed Apr  1 18:45:46 1998                          */
#*    Last change :  Fri Dec 21 06:49:31 2001 (serrano)                */
#*    -------------------------------------------------------------    */
#*    The makefile to build a bird library.                            */
#*=====================================================================*/

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

#*---------------------------------------------------------------------*/
#*    Compilers, Tools and Destinations                                */
#*---------------------------------------------------------------------*/
# the library name
TARGETNAME	= scribeapi

#*---------------------------------------------------------------------*/
#*    Scheme extended objects                                          */
#*---------------------------------------------------------------------*/
_BGL_OBJECTS	= api container io reader param \
                  backend configure misc ast rts sui \
                  prgm pbigloo pxml pscribe pc index \
                  biblio

_C_OBJECTS	= 
_JAVA_OBJECTS	= 

_OBJECTS	= $(_BGL_OBJECTS) $(_C_OBJECTS)
OBJECTS		= $(_OBJECTS:%=%.o)

_CLASSES	= $(_BGL_OBJECTS) $(_JAVA_OBJECTS)
CLASSES		= $(_OBJECTS:%=objs/class/bigloo/scribe/$(TARGETNAME)/%.class)

_BGL_SOURCES	= $(_BGL_OBJECTS:%=%.scm) 
_C_SOURCES	= $(_C_OBJECTS:%=%.c) 
_JAVA_SOURCES	= $(_JAVA_OBJECTS:%=%.java) 

SOURCES		= $(_BGL_SOURCES) $(_C_SOURCES) $(_JAVA_SOURCES)
INCLUDES	= markup.sch pervasive.sch

#*---------------------------------------------------------------------*/
#*    Sources                                                          */
#*---------------------------------------------------------------------*/
POPULATION	= $(SOURCES) $(INCLUDES) Makefile scribeapi.init make-lib.scm

#*---------------------------------------------------------------------*/
#*    all & jvm                                                        */
#*---------------------------------------------------------------------*/
all: configure.scm init lib-c heap-c
jvm: configure.scm init lib-jvm heap-jvm

#*---------------------------------------------------------------------*/
#*    Init                                                             */
#*---------------------------------------------------------------------*/
init: $(LIB)/scribeapi.init

$(LIB)/scribeapi.init: pervasive.sch markup.sch scribeapi.init
	cp scribeapi.init $(LIB)/scribeapi.init

#*---------------------------------------------------------------------*/
#*    Standard Scribe Makefile                                         */
#*---------------------------------------------------------------------*/
include ../Makefile.tpl

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

#*---------------------------------------------------------------------*/
#*    clean                                                            */
#*---------------------------------------------------------------------*/
clean: stdclean

#*---------------------------------------------------------------------*/
#*    configure.scm                                                    */
#*---------------------------------------------------------------------*/
configure.scm:
	(cd ..; ./configure --scribe_config=$(TARGETNAME)/configure.scm)

#*---------------------------------------------------------------------*/
#*    api.o                                                            */
#*---------------------------------------------------------------------*/
api.o: markup.sch pervasive.sch 
