source: git/IntegerProgramming/Makefile.in @ 5f6e18

spielwiese
Last change on this file since 5f6e18 was 3e0c94f, checked in by Hans Schönemann <hannes@…>, 15 years ago
*hannes: no separate plural targets (except doc) git-svn-id: file:///usr/local/Singular/svn/trunk@11266 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 2.7 KB
Line 
1## Makefile for integer programming
2SINGUNAME       = @SINGUNAME@
3##
4## various paths
5##
6bindir          = @bindir@
7prefix          = @prefix@
8slibdir         = ${prefix}/LIB
9install_bindir  = ${install_prefix}/${SINGUNAME}
10libdir          = @libdir@
11
12
13##
14## various programs
15##
16@SET_MAKE@
17CXX             = @CXX@
18## gcc won't work
19ifeq ($(CXX),gcc)
20CXX := c++
21endif
22
23INSTALL         = @INSTALL@
24INSTALL_PROGRAM = @INSTALL_PROGRAM@  -s
25MKINSTALLDIRS   = ../mkinstalldirs
26
27##
28## compiler and linker options
29##
30CPPFLAGS        = -I. @CPPFLAGS@
31CXXFLAGS        = @CXXFLAGS@
32LDFLAGS         = -L${libdir} @LDFLAGS@ -lgmp
33
34
35MAIN1   := solve_IP
36OBJECTS1:= $(MAIN1).o
37
38MAIN2   := change_cost
39OBJECTS2:= $(MAIN2).o
40
41MAIN3   := toric_ideal
42OBJECTS3:= $(MAIN3).o
43
44MAIN4   := gen_test
45OBJECTS4:= $(MAIN4).o
46
47LLL   := LLL
48OBJECTS_LLL:= LLL_lattice_to_send.o
49
50%.o: %.cc si_gcc_v.h
51        $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $< -o $@
52
53all: $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4) $(LLL)
54
55install-nolns: install
56
57install: $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4) $(LLL)
58        ${MKINSTALLDIRS} ${bindir}
59        ${INSTALL_PROGRAM} $(MAIN1) ${bindir}
60        ${INSTALL_PROGRAM} $(MAIN2) ${bindir}
61        ${INSTALL_PROGRAM} $(MAIN3) ${bindir}
62        ${INSTALL_PROGRAM} $(MAIN4) ${bindir}
63        ${INSTALL_PROGRAM} $(LLL) ${bindir}
64
65install-bindist: $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4)
66        ${MKINSTALLDIRS} ${install_bindir}
67        ${INSTALL_PROGRAM} -s $(MAIN1) ${install_bindir}
68        ${INSTALL_PROGRAM} -s $(MAIN2) ${install_bindir}
69        ${INSTALL_PROGRAM} -s $(MAIN3) ${install_bindir}
70        ${INSTALL_PROGRAM} -s $(MAIN4) ${install_bindir}
71        ${INSTALL_PROGRAM} -s $(LLL) ${install_bindir}
72
73clean:
74        rm -f *.o *~  $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4) $(LLL) si_gcc_v.h
75
76distclean: clean
77        -rm -f ${bindir}/$(MAIN1)
78        -rm -f ${bindir}/$(MAIN2)
79        -rm -f ${bindir}/$(MAIN3)
80        -rm -f ${bindir}/$(MAIN4)
81        -rm -f ${bindir}/$(LLL)
82
83si_gcc_v.h:
84        ./gccversion.sh
85
86$(MAIN1): term_ordering.o binomial.o list.o BigInt.o LLL.o matrix.o \
87        ideal.o \
88        Buchberger.o ideal_stuff.o IP_algorithms.o testdata.o \
89        $(OBJECTS1)
90        $(CXX) $^ -o $@ $(LDFLAGS)
91
92$(MAIN2): term_ordering.o binomial.o list.o BigInt.o LLL.o matrix.o \
93        ideal.o \
94        Buchberger.o ideal_stuff.o IP_algorithms.o testdata.o  \
95        $(OBJECTS2)
96        $(CXX)  $^ -o $@ $(LDFLAGS)
97
98$(MAIN3): term_ordering.o binomial.o list.o BigInt.o LLL.o matrix.o \
99        ideal.o \
100        Buchberger.o ideal_stuff.o IP_algorithms.o testdata.o \
101        $(OBJECTS3)
102        $(CXX)  $^ -o $@ $(LDFLAGS)
103
104$(MAIN4): term_ordering.o binomial.o list.o BigInt.o LLL.o matrix.o \
105        ideal.o \
106        Buchberger.o ideal_stuff.o IP_algorithms.o testdata.o \
107        $(OBJECTS4)
108        $(CXX)  $^ -o $@ $(LDFLAGS)
109
110$(LLL): $(OBJECTS_LLL)
111        $(CXX)  $^ -o $@ $(LDFLAGS)
112
113Makefile: Makefile.in
114        cd ..;  CONFIG_FILES="IntegerProgramming/Makefile" CONFIG_HEADERS= ./config.status
115
Note: See TracBrowser for help on using the repository browser.