mirror of
				https://github.com/RfidResearchGroup/proxmark3.git
				synced 2025-11-04 03:27:48 +08:00 
			
		
		
		
	All the uses of LD actually wanted g++, so just use CXX and remove an unused LD define Closes: https://github.com/pentoo/pentoo-overlay/issues/1259 Fixes: https://github.com/RfidResearchGroup/proxmark3/pull/1758
		
			
				
	
	
		
			112 lines
		
	
	
	
		
			3.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			112 lines
		
	
	
	
		
			3.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
#-----------------------------------------------------------------------------
 | 
						|
# Copyright (C) Proxmark3 contributors. See AUTHORS.md for details.
 | 
						|
#
 | 
						|
# This program is free software: you can redistribute it and/or modify
 | 
						|
# it under the terms of the GNU General Public License as published by
 | 
						|
# the Free Software Foundation, either version 3 of the License, or
 | 
						|
# (at your option) any later version.
 | 
						|
#
 | 
						|
# This program is distributed in the hope that it will be useful,
 | 
						|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
						|
# GNU General Public License for more details.
 | 
						|
#
 | 
						|
# See LICENSE.txt for the text of the license.
 | 
						|
#-----------------------------------------------------------------------------
 | 
						|
# This Makefile might have been called from various subdirs, trying to find our Makefile.defs
 | 
						|
ifeq ($(DEFSBEENHERE),)
 | 
						|
    -include Makefile.defs
 | 
						|
endif
 | 
						|
ifeq ($(DEFSBEENHERE),)
 | 
						|
    -include ../Makefile.defs
 | 
						|
endif
 | 
						|
ifeq ($(DEFSBEENHERE),)
 | 
						|
    -include ../../Makefile.defs
 | 
						|
endif
 | 
						|
ifeq ($(DEFSBEENHERE),)
 | 
						|
    -include ../../../Makefile.defs
 | 
						|
endif
 | 
						|
ifeq ($(DEFSBEENHERE),)
 | 
						|
    $(error Can't find Makefile.defs)
 | 
						|
endif
 | 
						|
 | 
						|
CFLAGS ?= $(DEFCFLAGS)
 | 
						|
CFLAGS += $(MYDEFS) $(MYCFLAGS) $(MYINCLUDES)
 | 
						|
CXXFLAGS ?= $(DEFCXXFLAGS)
 | 
						|
CXXFLAGS += $(MYDEFS) $(MYCXXFLAGS) $(MYINCLUDES)
 | 
						|
LDFLAGS ?= $(DEFLDFLAGS)
 | 
						|
LDFLAGS += $(MYLDFLAGS)
 | 
						|
LDLIBS += $(MYLDLIBS)
 | 
						|
 | 
						|
vpath %.c $(MYSRCPATHS)
 | 
						|
 | 
						|
# Flags to generate temporary dependency files
 | 
						|
DEPFLAGS = -MT $@ -MMD -MP -MF $(OBJDIR)/$*.Td
 | 
						|
# make temporary to final dependency files after successful compilation
 | 
						|
POSTCOMPILE = $(MV) -f $(OBJDIR)/$*.Td $(OBJDIR)/$*.d && $(TOUCH) $@
 | 
						|
 | 
						|
BINDIR := .
 | 
						|
OBJDIR := obj
 | 
						|
 | 
						|
MYOBJS ?= $(MYSRCS:%.c=$(OBJDIR)/%.o)
 | 
						|
MYCXXOBJS ?= $(MYCXXSRCS:%.cpp=$(OBJDIR)/%.o)
 | 
						|
CLEAN = $(foreach bin,$(MYLIBS) $(BINS) $(LIB_A),$(BINDIR)/$(bin))
 | 
						|
 | 
						|
all: $(foreach bin,$(MYLIBS) $(BINS) $(LIB_A),$(BINDIR)/$(bin))
 | 
						|
 | 
						|
clean:
 | 
						|
	$(Q)$(RM) $(CLEAN)
 | 
						|
	$(Q)$(RMDIR) $(OBJDIR)
 | 
						|
ifneq (,$(MYCLEANOLDPATH))
 | 
						|
	    $(Q)$(RM) $(foreach f,$(CLEAN),$(MYCLEANOLDPATH)/$(f))
 | 
						|
	    $(Q)$(RMDIR) $(MYCLEANOLDPATH)/$(OBJDIR)
 | 
						|
	    $(Q)$(RMDIR_SOFT) $(MYCLEANOLDPATH) 2>/dev/null || true
 | 
						|
endif
 | 
						|
 | 
						|
install: all
 | 
						|
ifneq (,$(INSTALLTOOLS))
 | 
						|
	    $(info [@] Installing $(BINS) to $(DESTDIR)$(PREFIX)...)
 | 
						|
	    $(Q)$(INSTALLSUDO) $(MKDIR) $(DESTDIR)$(PREFIX)$(PATHSEP)$(INSTALLTOOLSRELPATH)
 | 
						|
	    $(Q)$(INSTALLSUDO) $(CP) $(INSTALLTOOLS) $(DESTDIR)$(PREFIX)$(PATHSEP)$(INSTALLTOOLSRELPATH)
 | 
						|
endif
 | 
						|
	@true
 | 
						|
 | 
						|
uninstall:
 | 
						|
ifneq (,$(INSTALLTOOLS))
 | 
						|
	    $(info [@] Uninstalling $(BINS) from $(DESTDIR)$(PREFIX)...)
 | 
						|
	    $(Q)$(INSTALLSUDO) $(RM) $(foreach tool,$(INSTALLTOOLS),$(DESTDIR)$(PREFIX)$(PATHSEP)$(INSTALLTOOLSRELPATH)$(PATHSEP)$(notdir $(tool)))
 | 
						|
endif
 | 
						|
	@true
 | 
						|
 | 
						|
.PHONY: all clean install uninstall
 | 
						|
 | 
						|
$(BINDIR)/$(LIB_A): $(MYOBJS) $(MYCXXOBJS)
 | 
						|
	$(info [=] AR $(notdir $@))
 | 
						|
	$(Q)$(AR) $@ $(MYOBJS) $(MYCXXOBJS)
 | 
						|
	$(Q)$(RANLIB) $@
 | 
						|
 | 
						|
$(BINDIR)/% : $(OBJDIR)/%.o $(MYOBJS) $(MYCXXOBJS) $(MYLIBS)
 | 
						|
	$(info [=] CXX $(notdir $@))
 | 
						|
	$(Q)$(CXX) $(LDFLAGS) $(MYOBJS) $(MYCXXOBJS) $< -o $@ $(MYLIBS) $(MYLDLIBS)
 | 
						|
 | 
						|
%.o: %.c
 | 
						|
$(OBJDIR)/%.o : %.c $(OBJDIR)/%.d | $(OBJDIR)
 | 
						|
	$(info [-] CC $<)
 | 
						|
	$(Q)$(CC) $(DEPFLAGS) $(CFLAGS) -c -o $@ $<
 | 
						|
	$(Q)$(POSTCOMPILE)
 | 
						|
 | 
						|
%.o: %.cpp
 | 
						|
$(OBJDIR)/%.o : %.cpp $(OBJDIR)/%.d | $(OBJDIR)
 | 
						|
	$(info [-] CXX $<)
 | 
						|
	$(Q)$(CXX) $(DEPFLAGS) $(CXXFLAGS) -c -o $@ $<
 | 
						|
	$(Q)$(POSTCOMPILE)
 | 
						|
 | 
						|
$(OBJDIR):
 | 
						|
	$(Q)$(MKDIR) $(OBJDIR)
 | 
						|
 | 
						|
DEPENDENCY_FILES = $(MYOBJS:%.o=%.d) $(MYCXXOBJS:%.o=%.d) $(BINS:%=$(OBJDIR)/%.d)
 | 
						|
 | 
						|
$(DEPENDENCY_FILES): ;
 | 
						|
.PRECIOUS: $(DEPENDENCY_FILES)
 | 
						|
 | 
						|
-include $(DEPENDENCY_FILES)
 |