#/*------------------------------------------------------------------------------ #-- This file is a part of the libuc, microcontroler library #-- Copyright (C) 2012, Alexis Jeandet #-- #-- 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. #-- #-- You should have received a copy of the GNU General Public License #-- along with this program; if not, write to the Free Software #-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #------------------------------------------------------------------------------- #-- Author : Alexis Jeandet #-- Mail : alexis.jeandet@gmail.com #-------------------------------------------------------------------------------*/ #--------------------------------------------------------------------------------- # GCC EXECUTABLES #--------------------------------------------------------------------------------- bin: $(DEVSOURCESND) $(BINDIR)/$(TARGET).elf $(BINDIR)/$(TARGET).bin $(BINDIR)/$(TARGET).hex @echo "compile bin" lib: $(TARGETINSTALLPATH)/$(TARGET).a @echo "compile lib" %.o : %.c mkdir -p $(OBJDIR) $(LIBUC_CC) -O3 -I $(INCLUDES) -c $(CFLAGS) $< -o $@ $(OBJECTFILES) : $(OBJDIR)/%.o : %.c $(DEPS) mkdir -p $(OBJDIR) $(LIBUC_CC) -O3 -I $(INCLUDES) -c $(CFLAGS) $< -o $@ $(ASMOBJECTFILES) : $(OBJDIR)/%.o : %.s mkdir -p $(OBJDIR) $(LIBUC_CC) -I $(INCLUDES) -c $(CFLAGS) $< -o $@ %.elf: $(LINKER_SCRIPT) $(OBJECTFILES) mkdir -p $(BINDIR) $(LIBUC_LD) -Map $(@:.elf=.map) $(LIBUC_LDFLAGS) $^ -o $@ $(LIBUC_BSP) $(LIBUC_LIBRARIES) $(LIBUC_OBJDUMP) $(LIBUC_ODFLAGS) $@ > $(@:.elf=.dump) $(LIBUC_SIZE) $@ %.bin: %.elf $(BIN_LIBS_DEPS) $(LIBUC_OBJCOPY) $(LIBUC_CPFLAGS) -O binary $< $*.bin @echo "BIN_LIBS_DEPS" @echo $(BIN_LIBS_DEPS) %.hex: %.elf $(LIBUC_OBJCOPY) $(LIBUC_CPFLAGS) -O ihex $< $*.hex %.a: $(OBJECTFILES) mkdir -p $(TARGETINSTALLPATH) mkdir -p $(HEADERSINSTALLPATH) $(LIBUC_AR) rcs $@ $(OBJECTFILES) #$(LIBUC_AR) rcs $(TARGETINSTALLPATH)/$@ $(OBJECTFILES) cp -f $(HEADERS) $(HEADERSINSTALLPATH)/