--- Makefile.in.orig Thu May 22 21:18:22 1997 +++ Makefile.in Sat Sep 26 21:59:37 1998 @@ -13,6 +13,16 @@ RANLIB = @RANLIB@ LIBS = @LIBS@ @X_LIBS@ @X_PRE_LIBS@ -lXmu -lXaw -lXt -lX11 @X_EXTRA_LIBS@ +.if $(PORTOBJFORMAT) == "elf" +LIBS+= -Wl,-rpath,$(X11BASE)/lib +SHLDFLAGS= -shared -x -soname $@ +DNDLIB= libDnd.so.1 +DNDPLUSLIB= libDnd++.so.1 +.else +SHLDFLAGS= -Bshareable -x +DNDLIB= libDnd.so.1.0 +DNDPLUSLIB= libDnd++.so.1.0 +.endif prefix = @prefix@ exec_prefix = @exec_prefix@ @@ -23,20 +33,30 @@ CXXCOMPILE = $(CXX) $(INCLUDES) $(CXXFLAGS) -c LINK = $(CC) $(LDFLAGS) -o $@ +SOCOMPILE= $(COMPILE) -fpic +SOCXXCOMPILE = $(CXX) $(INCLUDES) $(CXXFLAGS) -c -fpic + default: all -all: libC libCpp dndtest +all: libC libCpp dndtest libC-so libCpp-so install: libCpp libC install -d $(INC_DIR) - install DragAndDrop.h DragAndDropTypes.h $(INC_DIR) + install -c -m 644 DragAndDrop.h DragAndDropTypes.h $(INC_DIR) install -d $(LIB_DIR) - install libDnd.a libDnd++.a $(LIB_DIR) + install -c -m 644 libDnd.a libDnd++.a $(LIB_DIR) + install -c $(DNDLIB) $(DNDPLUSLIB) $(LIB_DIR) + ln -sf $(DNDLIB) $(LIB_DIR)/libDnd.so + ln -sf $(DNDPLUSLIB) $(LIB_DIR)/libDnd++.so libC: libDnd.a libCpp: libDnd++.a +libC-so: $(DNDLIB) + +libCpp-so: $(DNDPLUSLIB) + dndtest: dndtest.c libDnd.a rm -f dndtest $(COMPILE) dndtest.c @@ -57,6 +77,16 @@ $(AR) cru libDnd++.a DragAndDrop.o $(RANLIB) libDnd++.a -clean: - rm -f *.o *.cxx *.a dndtest *~ *bak +$(DNDLIB): DragAndDrop.c + rm -f DragAndDrop.so + $(SOCOMPILE) -o DragAndDrop.so DragAndDrop.c + $(LD) $(SHLDFLAGS) -o $(DNDLIB) DragAndDrop.so +$(DNDPLUSLIB): DragAndDrop.c + rm -f DragAndDrop.so DragAndDrop.cxx + ln -s DragAndDrop.c DragAndDrop.cxx + $(SOCXXCOMPILE) -o DragAndDrop.so DragAndDrop.cxx + $(LD) $(SHLDFLAGS) -o $(DNDPLUSLIB) DragAndDrop.so + +clean: + rm -f *.o *.so *.cxx *.a dndtest *~ *bak