That looks good. I update the pysparse to use the run time path.
http://cgen.home.comcast.net/pysparse-0.1.0.tar.gz Thanks Chris On Sat, Feb 19, 2005 at 11:15:48AM -0800, Linus Torvalds wrote: > > > On Sat, 19 Feb 2005, Linus Torvalds wrote: > > > > Somebody who builds shared libraries more, please correct me/us. > > Here's what I believe is a better example of building (and using) sparse > as a dynamic library. Dunno if we want to go this way. > > Linus > > ---- > ===== Makefile 1.62 vs edited ===== > --- 1.62/Makefile 2004-12-09 09:21:45 -08:00 > +++ edited/Makefile 2005-02-19 11:12:44 -08:00 > @@ -4,11 +4,12 @@ > OS=linux > > CC=gcc > -CFLAGS=-O -g -Wall -Wwrite-strings > -LDFLAGS=-g > +CFLAGS=-O -g -Wall -Wwrite-strings -fpic > +LDFLAGS=-g -Wl,-rpath,$(BINDIR) > AR=ar > > PREFIX=$(HOME) > +BINDIR=$(PREFIX)/bin > PROGRAMS=test-lexing test-parsing obfuscate check compile test-linearize > example > > LIB_H= token.h parse.h lib.h symbol.h scope.h expression.h target.h \ > @@ -21,17 +22,19 @@ > flow.o cse.o simplify.o memops.o liveness.o storage.o > > LIB_FILE= sparse.a > -LIBS=$(LIB_FILE) > +SLIB_FILE= libsparse.so > > -all: $(PROGRAMS) > +LIBS=$(SLIB_FILE) > + > +all: $(PROGRAMS) $(SLIB_FILE) > > # > # Install the 'check' binary as 'sparse', just to confuse people. > # > # "The better to keep you on your toes, my dear". > # > -install: check bin-dir > - if test $< -nt $(PREFIX)/bin/sparse ; then install -v $< > $(PREFIX)/bin/sparse ; fi > +install: check $(SLIB_FILE) bin-dir > + if test $< -nt $(PREFIX)/bin/sparse ; then install -v $< > $(BINDIR)/sparse ; install -v $(SLIB_FILE) $(BINDIR) ; fi > > bin-dir: > @if ! test -d $(PREFIX)/bin; then \ > @@ -42,32 +45,35 @@ > > .PHONY: bin-dir > > -test-lexing: test-lexing.o $(LIB_FILE) > +test-lexing: test-lexing.o $(LIBS) > $(CC) $(LDFLAGS) -o $@ $< $(LIBS) > > -test-parsing: test-parsing.o $(LIB_FILE) > +test-parsing: test-parsing.o $(LIBS) > $(CC) $(LDFLAGS) -o $@ $< $(LIBS) > > -test-linearize: test-linearize.o $(LIB_FILE) > +test-linearize: test-linearize.o $(LIBS) > $(CC) $(LDFLAGS) -o $@ $< $(LIBS) > > -test-sort: test-sort.o $(LIB_FILE) > +test-sort: test-sort.o $(LIBS) > gcc $(LDFLAGS) -o $@ $< $(LIBS) > > -compile: compile.o compile-i386.o $(LIB_FILE) > +compile: compile.o compile-i386.o $(LIBS) > $(CC) $(LDFLAGS) -o $@ $< compile-i386.o $(LIBS) > > -obfuscate: obfuscate.o $(LIB_FILE) > +obfuscate: obfuscate.o $(LIBS) > $(CC) $(LDFLAGS) -o $@ $< $(LIBS) > > -check: check.o $(LIB_FILE) > +check: check.o $(LIBS) > $(CC) $(LDFLAGS) -o $@ $< $(LIBS) > > -example: example.o $(LIB_FILE) > +example: example.o $(LIBS) > $(CC) $(LDFLAGS) -o $@ $< $(LIBS) > > $(LIB_FILE): $(LIB_OBJS) > - $(AR) rcs $(LIB_FILE) $(LIB_OBJS) > + $(AR) rcs $@ $(LIB_OBJS) > + > +$(SLIB_FILE): $(LIB_OBJS) > + $(CC) -shared -o $@ $(LIB_OBJS) > > evaluate.o: $(LIB_H) > expression.o: $(LIB_H) > - > To unsubscribe from this list: send the line "unsubscribe linux-sparse" in > the body of a message to [EMAIL PROTECTED] > More majordomo info at http://vger.kernel.org/majordomo-info.html - To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
