45 lines
1.6 KiB
Text
45 lines
1.6 KiB
Text
Index: foma/Makefile
|
|
--- foma/Makefile.orig
|
|
+++ foma/Makefile
|
|
@@ -19,6 +19,7 @@ FLOOKUPLDFLAGS = libfoma.a -lz
|
|
CFLAGS = -O3 -Wall -D_GNU_SOURCE -std=c99 -fvisibility=hidden -fPIC
|
|
FOMAOBJS = foma.o stack.o iface.o lex.interface.o
|
|
LIBOBJS = int_stack.o define.o determinize.o apply.o rewrite.o lexcread.o topsort.o flags.o minimize.o reverse.o extract.o sigma.o io.o structures.o constructions.o coaccessible.o utf8.o spelling.o dynarray.o mem.o stringhash.o trie.o lex.lexc.o lex.yy.o lex.cmatrix.o regex.o
|
|
+SHLIBOBJS = $(LIBOBJS:.o=.so)
|
|
|
|
all: libfoma foma flookup cgflookup
|
|
|
|
@@ -65,10 +66,10 @@ LIBS = $(SHAREDLIBV) $(STATICLIB)
|
|
|
|
libfoma: $(SHAREDLIBV)
|
|
|
|
-$(SHAREDLIBV): $(LIBOBJS)
|
|
+$(SHAREDLIBV): $(LIBOBJS) $(SHLIBOBJS)
|
|
$(AR) $(ARFLAGS) $(STATICLIB) $(LIBOBJS)
|
|
$(RANLIB) $(STATICLIB)
|
|
- $(CC) $(CFLAGS) -shared -Wl,$(DFLAG),$(SHAREDLIBM) -o $(SHAREDLIBV) $(LIBOBJS) $(LDFLAGS)
|
|
+ $(CC) $(CFLAGS) -shared -o $(SHAREDLIBV) $(SHLIBOBJS) $(LDFLAGS)
|
|
|
|
install: foma libfoma libfoma.pc
|
|
-@if [ ! -d $(exec_prefix) ]; then mkdir -p $(exec_prefix); fi
|
|
@@ -84,9 +85,6 @@ install: foma libfoma libfoma.pc
|
|
cd $(libdir); chmod 755 $(LIBS); \
|
|
if test -f $(libdir)/$(SHAREDLIB); then rm $(libdir)/$(SHAREDLIB); fi
|
|
if test -f $(libdir)/$(SHAREDLIBM); then rm $(libdir)/$(SHAREDLIBM); fi
|
|
- cd $(libdir); ln -s $(SHAREDLIBV) $(SHAREDLIB); cd $(libdir); \
|
|
- ln -s $(SHAREDLIBV) $(SHAREDLIBM); (ldconfig || true) \
|
|
- >/dev/null 2>&1; \
|
|
|
|
$(OBJS): foma.h
|
|
|
|
@@ -104,6 +102,10 @@ libfoma.pc:
|
|
|
|
.c.o:
|
|
$(CC) $(CFLAGS) -c $< -o $@
|
|
+
|
|
+.SUFFIXES: .so
|
|
+.c.so:
|
|
+ $(CC) $(CFLAGS) -fPIC -c $< -o $@
|
|
|
|
lex.yy.c: regex.l regex.h
|
|
$(LEX) regex.l
|