+ more infrastructure

This commit is contained in:
eknauel 2003-10-28 16:52:37 +00:00
parent a25a3daae0
commit dda50cdfbe
5 changed files with 121 additions and 0 deletions

59
Makefile.in Normal file
View File

@ -0,0 +1,59 @@
CC = @CC@
LIBS = @LIBS@ -lscsh -lsasl2
SCSH_LIB = @scsh_libraries@
LIB_DIRS = -L$(SCSH_LIB)
INCLUDES = -I. -I./c
SCSH_INCLUDES = @scsh_includes@
ifneq ($(SCSH_INCLUDES),)
INCLUDES += -I$(SCSH_INCLUDES)
endif
SCSH_MODULES = @scsh_modules@
LDAP_VM = scshldapvm
LDAP_IMAGE = scsh-ldap.image
LDAP = scsh-ldap
prefix = @prefix@
exec_prefix = @exec_prefix@
enough: $(LDAP)
DIST_SOURCES = c/ldap.c
OBJECTS = $(DIST_SOURCES:.c=.o)
SCM_FILES = scheme/ldap.scm
SCM_CONFIG_FILES = scheme/ldap-interfaces.scm scheme/ldap-packages.scm
$(LDAP_VM): tmpmain.o $(OBJECTS)
$(CC) $(LDFLAGS) $(CFLAGS) -o $(LDAP_VM) $(LIB_DIRS) tmpmain.o $(OBJECTS) $(LIBS)
$(OBJECTS): c/scsh-ldap.h
.c.o:
$(CC) $(CFLAGS) -c $(INCLUDES) -o $@ $<
tmpmain.o: c/main.c
$(CC) -c -DSCSHIMAGE=\"$(SCSH_LIB)/scsh.image\" $(INCLUDES) $(CFLAGS) -o $@ $<
main.o: c/main.c
$(CC) -c -DSCSHIMAGE=\"`pwd`/scsh-ldap.image\" $(INCLUDES) $(CFLAGS) -o $@ $<
$(LDAP_IMAGE): $(LDAP_VM) $(SCM_FILES) $(SCM_CONFIG_FILES)
( \
echo ",batch on"; \
echo ",config ,load $(SCM_CONFIG_FILES)"; \
echo ",load-package ldap-low"; \
echo "(dump-scsh \"$(LDAP_IMAGE)\")"; \
) | ./$(LDAP_VM) $(SCSH_ARGS)
$(LDAP): $(LDAP_IMAGE) main.o $(OBJECTS)
$(CC) $(LDFLAGS) -o $@ $(LIB_DIRS) main.o $(OBJECTS) $(LIBS)
clean:
rm -f $(LDAP_VM) $(LDAP) $(LDAP_IMAGE) *.o c/*.o
distclean: clean
rm -f configure Makefile config.log config.status
rm -rf autom4te.cache/

13
c/main.c Normal file
View File

@ -0,0 +1,13 @@
#include "scheme48.h"
#include "c/config.h"
extern void scsh_ldap_main();
int main(int argc, char **argv)
{
s48_add_external_init(scsh_ldap_main);
return s48_main(10000000, 64000,
SCSHIMAGE,
--argc, ++argv);
}

32
configure.in Normal file
View File

@ -0,0 +1,32 @@
AC_INIT
AC_CONFIG_HEADER(c/config.h)
AC_PROG_CC
AC_ARG_WITH(scsh-includes,
AC_HELP_STRING([--with-scsh-includes=DIR],
[scsh include files are in DIR [/usr/local/include]]),
scsh_includes=$withval,
scsh_includes=/usr/local/include)
AC_SUBST(scsh_includes)
AC_ARG_WITH(scsh-libraries,
AC_HELP_STRING([--with-scsh-libraries=DIR],
[scsh libraries are in DIR [/usr/local/lib/scsh]]),
scsh_libraries=$withval,
scsh_libraries=/usr/local/lib/scsh)
AC_SUBST(scsh_libraries)
AC_ARG_WITH(scsh-modules,
AC_HELP_STRING([--with-scsh-modules=DIR],
[scsh modules are in DIR [/usr/local/lib/scsh/modules]]),
scsh_modules=$withval,
scsh_modules=/usr/local/lib/scsh/modules)
AC_SUBST(scsh_modules)
AC_CHECK_LIB(crypt, crypt)
dnl AC_CHECK_LIB(dl, dlopen)
AC_CHECK_LIB(m, exp)
AC_CHECK_LIB(ldap, ldap_open)
AC_SUBST(LIBS)
AC_SUBST(CC)
AC_OUTPUT(Makefile)

View File

@ -0,0 +1,11 @@
(define-interface ldap-low-interface
(export
ldap?
ldap-message?
ldap-open
ldap-init
ldap-bind-sync
ldap-unbind-sync
ldap-error-string
ldap-result-error))

6
scheme/ldap-packages.scm Normal file
View File

@ -0,0 +1,6 @@
(define-structure ldap-low ldap-low-interface
(open scheme
primitives
define-record-types
external-calls)
(files ldap))