add ubuntu package to INSTALL
[snark14.git] / Makefile
index 874f5fcd923710aa51269f5e192ed68f55663941..198d8acbc3add69f4dd259d9ec560a3ececcbfa8 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -8,8 +8,8 @@ CC         = gcc
 CXX        = g++
 LD         = g++
 
-CFLAGS    = -O4 -fPIC -DLINUX -D_REENTRANT -w -Wunused-parameter
-CXXFLAGS  = -O4 -fPIC -DLINUX -D_REENTRANT -w -Wunused-parameter
+CFLAGS    = -O4 -msse4 -fPIC -DLINUX -D_REENTRANT -w -Wunused-parameter
+CXXFLAGS  = -O4 -msse4 -fPIC -DLINUX -D_REENTRANT -w -Wunused-parameter
 
 LDFLAGS   = 
 
@@ -25,7 +25,7 @@ LIBSDIR    = lib
 LDIGFILED  = $(LIBSDIR)/libDIGFile.so
 LDIGFILESD = $(LIBSDIR)/libDIGFileSnark.so
 LDIGFILERD = $(LIBSDIR)/libDIGRand.so
-LSNARK14   = $(LIBSDIR)/libsnark14.so
+LSNARK14D  = $(LIBSDIR)/libsnark14.so
 
 SRC_CXX    = $(foreach dir,src/snark,$(wildcard src/snark/*.cpp))
 SRC_C      = $(foreach dir,src/snark,$(wildcard src/snark/*.c))
@@ -44,11 +44,15 @@ DISPLAY    = snark14Display
 DISPLAY_SRC  = $(foreach dir,tools/Display,$(wildcard tools/Display/*.cpp))
 DISPLAY_INC  = $(foreach dir,tools/Display,$(wildcard tools/Display/*.hpp))
  
-all: $(OBJDIR) $(LIBSDIR) $(BINDIR) $(BINDIR)/$(SNARK14) $(BINDIR)/$(DISPLAY) $(BINDIR)/$(INPUT) $(LSNARK14)
+all: $(OBJDIR) $(LIBSDIR) $(BINDIR) $(BINDIR)/$(SNARK14) $(BINDIR)/$(DISPLAY) $(BINDIR)/$(INPUT) $(LSNARK14D)
 
 $(BINDIR)/$(SNARK14): $(LDIGFILED) $(LDIGFILESD) $(LDIGFILERD) $(OBJ_C) $(OBJ_CXX)
        $(LD) $(LIBPATH) $(LDFLAGS) $(OBJ_C) $(OBJ_CXX) $(LIBS) -o bin/$(SNARK14)
 
+# Does not link correctly with shared library file libsnark14.so
+#$(BINDIR)/$(SNARK14): $(LDIGFILED) $(LDIGFILESD) $(LDIGFILERD) $(LSNARK14D)
+#      $(LD) $(LIBPATH) $(LDFLAGS) -o bin/$(SNARK14) $(LIBS) -lsnark14
+
 $(BINDIR)/$(DISPLAY): $(DISPLAY_SRC) $(DISPLAY_INC)
        cd tools/Display ; make
 
@@ -75,8 +79,9 @@ $(LDIGFILESD) : $(DIGFILESD)
 $(LDIGFILERD) : $(DIGFILERD)
        $(MAKE) --directory=$<
 
-$(LSNARK14) : $(SNARK14D) $(BINDIR)/$(SNARK14)
-       $(MAKE) --directory=$<
+# Make shared library
+$(LSNARK14D) : $(OBJ_CXX) $(OBJ_C)
+       $(LD) --shared $(LDFLAGS) -o $(LSNARK14D) $(OBJ_CXX) $(OBJ_C) $(LIBS)
 
 $(OBJDIR):
        @mkdir -p $@
@@ -90,6 +95,7 @@ $(BINDIR):
 install:
        @cp lib/* /usr/local/lib/.
        @ldconfig
+       @cp bin/* /usr/local/bin/.
 
 clean:
        @rm -rf $(BINDIR) $(OBJDIR) $(LIBSDIR) $(LDIGFILED) $(LDIGFILESD) $(LDIGFILERD)