Rework install_cc recipe
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -27,6 +27,7 @@ objs/
|
||||
temp/
|
||||
temp-python*
|
||||
lib/
|
||||
install/
|
||||
examples/csharp/solution/*.csproj
|
||||
examples/csharp/*.sln
|
||||
examples/notebook/.ipynb_checkpoints
|
||||
@@ -80,4 +81,4 @@ tools/netstandard/CreateSigningKey/obj
|
||||
|
||||
ortools/fsharp/**/bin
|
||||
ortools/fsharp/**/obj
|
||||
ortools/fsharp/**/packages
|
||||
ortools/fsharp/**/packages
|
||||
|
||||
@@ -10,6 +10,14 @@ else
|
||||
@echo
|
||||
endif
|
||||
|
||||
# Checks if the user has overwritten default install prefix.
|
||||
# cf https://www.gnu.org/prep/standards/html_node/Directory-Variables.html#index-prefix
|
||||
ifeq ($(SYSTEM),win)
|
||||
prefix ?= C:\\Program Files\\or-tools
|
||||
else
|
||||
prefix ?= /usr/local
|
||||
endif
|
||||
|
||||
# Main target
|
||||
.PHONY: cc # Build C++ OR-Tools.
|
||||
cc: ortoolslibs ccexe
|
||||
@@ -799,6 +807,46 @@ rcc: $(BIN_DIR)$S$(basename $(notdir $(EX)))$E
|
||||
@echo running $(BIN_DIR)$S$(basename $(notdir $(EX)))$E
|
||||
$(BIN_DIR)$S$(basename $(notdir $(EX)))$E $(ARGS)
|
||||
|
||||
###############
|
||||
## INSTALL ##
|
||||
###############
|
||||
install_dirs:
|
||||
-$(MKDIR) "$(prefix)"
|
||||
-$(MKDIR) "$(prefix)$Slib"
|
||||
-$(MKDIR) "$(prefix)$Sinclude"
|
||||
-$(DELREC) "$(prefix)$Sinclude$Sortools"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Salgorithms"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Sbase"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Sbop"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Sconstraint_solver"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Sglop"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Sgraph"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Slinear_solver"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Slp_data"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Ssat"
|
||||
$(MKDIR) "$(prefix)$Sinclude$Sortools$Sutil"
|
||||
|
||||
.PHONY: install_cc # Install C++ OR-Tools to $(prefix)/.
|
||||
install_cc: ortoolslibs $(PATCHELF) install_dirs
|
||||
$(COPY) $(LIB_DIR)$S$(LIB_PREFIX)ortools.$(LIB_SUFFIX) "$(prefix)$Slib"
|
||||
$(COPY) ortools$Salgorithms$S*.h "$(prefix)$Sinclude$Sortools$Salgorithms"
|
||||
$(COPY) ortools$Sbase$S*.h "$(prefix)$Sinclude$Sortools$Sbase"
|
||||
$(COPY) ortools$Sconstraint_solver$S*.h "$(prefix)$Sinclude$Sortools$Sconstraint_solver"
|
||||
$(COPY) ortools$Sgen$Sortools$Sconstraint_solver$S*.pb.h "$(prefix)$Sinclude$Sortools$Sconstraint_solver"
|
||||
$(COPY) ortools$Sbop$S*.h "$(prefix)$Sinclude$Sortools$Sbop"
|
||||
$(COPY) ortools$Sgen$Sortools$Sbop$S*.pb.h "$(prefix)$Sinclude$Sortools$Sbop"
|
||||
$(COPY) ortools$Sglop$S*.h "$(prefix)$Sinclude$Sortools$Sglop"
|
||||
$(COPY) ortools$Sgen$Sortools$Sglop$S*.pb.h "$(prefix)$Sinclude$Sortools$Sglop"
|
||||
$(COPY) ortools$Sgraph$S*.h "$(prefix)$Sinclude$Sortools$Sgraph"
|
||||
$(COPY) ortools$Sgen$Sortools$Sgraph$S*.h "$(prefix)$Sinclude$Sortools$Sgraph"
|
||||
$(COPY) ortools$Slinear_solver$S*.h "$(prefix)$Sinclude$Sortools$Slinear_solver"
|
||||
$(COPY) ortools$Slp_data$S*.h "$(prefix)$Sinclude$Sortools$Slp_data"
|
||||
$(COPY) ortools$Sgen$Sortools$Slinear_solver$S*.pb.h "$(prefix)$Sinclude$Sortools$Slinear_solver"
|
||||
$(COPY) ortools$Ssat$S*.h "$(prefix)$Sinclude$Sortools$Ssat"
|
||||
$(COPY) ortools$Sgen$Sortools$Ssat$S*.pb.h "$(prefix)$Sinclude$Sortools$Ssat"
|
||||
$(COPY) ortools$Sutil$S*.h "$(prefix)$Sinclude$Sortools$Sutil"
|
||||
|
||||
.PHONY: detect_cc # Show variables used to build C++ OR-Tools.
|
||||
detect_cc:
|
||||
@echo Relevant info for the C++ build:
|
||||
|
||||
@@ -1,54 +1,21 @@
|
||||
create_install_dirs:
|
||||
-$(MKDIR) $(TARGET_DIR)
|
||||
-$(MKDIR) $(TARGET_DIR)$Slib
|
||||
-$(MKDIR) $(TARGET_DIR)$Sbin
|
||||
-$(MKDIR) $(TARGET_DIR)$Sinclude
|
||||
-$(MKDIR) $(TARGET_DIR)$Sinclude$Sgflags
|
||||
-$(MKDIR) $(TARGET_DIR)$Sinclude$Sglog
|
||||
-$(MKDIR) $(TARGET_DIR)$Sinclude$Sgoogle
|
||||
-$(DELREC) $(TARGET_DIR)$Sinclude$Sortools
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Salgorithms
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Sbase
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Sbop
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Sconstraint_solver
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Sglop
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Sgraph
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Slinear_solver
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Slp_data
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Ssat
|
||||
$(MKDIR) $(TARGET_DIR)$Sinclude$Sortools$Sutil
|
||||
install_deps_dirs:
|
||||
-$(MKDIR_P) "$(prefix)$Sinclude$Sgflags"
|
||||
-$(MKDIR_P) "$(prefix)$Sinclude$Sglog"
|
||||
-$(MKDIR_P) "$(prefix)$Sinclude$Sgoogle"
|
||||
|
||||
install_cc: create_install_dirs cc $(PATCHELF)
|
||||
$(COPY) $(LIB_DIR)$S$(LIB_PREFIX)ortools.$(LIB_SUFFIX) $(TARGET_DIR)$Slib
|
||||
$(COPY) ortools$Salgorithms$S*.h $(TARGET_DIR)$Sinclude$Sortools$Salgorithms
|
||||
$(COPY) ortools$Sbase$S*.h $(TARGET_DIR)$Sinclude$Sortools$Sbase
|
||||
$(COPY) ortools$Sconstraint_solver$S*.h $(TARGET_DIR)$Sinclude$Sortools$Sconstraint_solver
|
||||
$(COPY) ortools$Sgen$Sortools$Sconstraint_solver$S*.pb.h $(TARGET_DIR)$Sinclude$Sortools$Sconstraint_solver
|
||||
$(COPY) ortools$Sbop$S*.h $(TARGET_DIR)$Sinclude$Sortools$Sbop
|
||||
$(COPY) ortools$Sgen$Sortools$Sbop$S*.pb.h $(TARGET_DIR)$Sinclude$Sortools$Sbop
|
||||
$(COPY) ortools$Sglop$S*.h $(TARGET_DIR)$Sinclude$Sortools$Sglop
|
||||
$(COPY) ortools$Sgen$Sortools$Sglop$S*.pb.h $(TARGET_DIR)$Sinclude$Sortools$Sglop
|
||||
$(COPY) ortools$Sgraph$S*.h $(TARGET_DIR)$Sinclude$Sortools$Sgraph
|
||||
$(COPY) ortools$Sgen$Sortools$Sgraph$S*.h $(TARGET_DIR)$Sinclude$Sortools$Sgraph
|
||||
$(COPY) ortools$Slinear_solver$S*.h $(TARGET_DIR)$Sinclude$Sortools$Slinear_solver
|
||||
$(COPY) ortools$Slp_data$S*.h $(TARGET_DIR)$Sinclude$Sortools$Slp_data
|
||||
$(COPY) ortools$Sgen$Sortools$Slinear_solver$S*.pb.h $(TARGET_DIR)$Sinclude$Sortools$Slinear_solver
|
||||
$(COPY) ortools$Ssat$S*.h $(TARGET_DIR)$Sinclude$Sortools$Ssat
|
||||
$(COPY) ortools$Sgen$Sortools$Ssat$S*.pb.h $(TARGET_DIR)$Sinclude$Sortools$Ssat
|
||||
$(COPY) ortools$Sutil$S*.h $(TARGET_DIR)$Sinclude$Sortools$Sutil
|
||||
install_full_cc: install_cc install_deps_dirs
|
||||
ifeq ($(SYSTEM),win)
|
||||
tools\tar.exe -cf - -C dependencies$Sinstall$Sinclude gflags | tools\tar.exe -xpf - -C $(TARGET_DIR)$Sinclude
|
||||
tools\tar.exe -cf - -C dependencies$Sinstall$Sinclude glog | tools\tar.exe -xpf - -C $(TARGET_DIR)$Sinclude
|
||||
tools\tar.exe -cf - -C dependencies$Sinstall$Sinclude google | tools\tar.exe -xpf - -C $(TARGET_DIR)$Sinclude
|
||||
tools\tar.exe -cf - -C dependencies$Sinstall$Sinclude gflags | tools\tar.exe -xpf - -C "$(prefix)$Sinclude"
|
||||
tools\tar.exe -cf - -C dependencies$Sinstall$Sinclude glog | tools\tar.exe -xpf - -C "$(prefix)$Sinclude"
|
||||
tools\tar.exe -cf - -C dependencies$Sinstall$Sinclude google | tools\tar.exe -xpf - -C "$(prefix)$Sinclude"
|
||||
else
|
||||
tar -cf - -C dependencies$Sinstall$Sinclude gflags | tar -xpf - -C $(TARGET_DIR)$Sinclude
|
||||
tar -cf - -C dependencies$Sinstall$Sinclude glog | tar -xpf - -C $(TARGET_DIR)$Sinclude
|
||||
tar -cf - -C dependencies$Sinstall$Sinclude google | tar -xpf - -C $(TARGET_DIR)$Sinclude
|
||||
tar -cf - -C dependencies$Sinstall$Sinclude gflags | tar -xpf - -C "$(prefix)$Sinclude"
|
||||
tar -cf - -C dependencies$Sinstall$Sinclude glog | tar -xpf - -C "$(prefix)$Sinclude"
|
||||
tar -cf - -C dependencies$Sinstall$Sinclude google | tar -xpf - -C "$(prefix)$Sinclude"
|
||||
endif
|
||||
$(COPY) LICENSE-2.0.txt $(TARGET_DIR)
|
||||
$(COPY) LICENSE-2.0.txt "$(prefix)"
|
||||
ifeq ($(PLATFORM),MACOSX)
|
||||
$(COPY) tools/install_libortools_mac.sh $(TARGET_DIR)
|
||||
chmod 775 $(TARGET_DIR)/install_libortools_mac.sh
|
||||
cd $(TARGET_DIR) && ./install_libortools_mac.sh && rm install_libortools_mac.sh
|
||||
$(COPY) tools/install_libortools_mac.sh "$(prefix)"
|
||||
chmod 775 "$(prefix)/install_libortools_mac.sh"
|
||||
cd "$(prefix)" && ./install_libortools_mac.sh && rm install_libortools_mac.sh
|
||||
endif
|
||||
|
||||
Reference in New Issue
Block a user