1*6ac9f479SMike Frysinger /* 2*6ac9f479SMike Frysinger * Linker script helper macros 3*6ac9f479SMike Frysinger * 4*6ac9f479SMike Frysinger * Copyright (c) 2009 Analog Devices Inc. 5*6ac9f479SMike Frysinger * 6*6ac9f479SMike Frysinger * Licensed under the GPL-2 or later. 7*6ac9f479SMike Frysinger */ 8*6ac9f479SMike Frysinger 9*6ac9f479SMike Frysinger #ifndef __U_BOOT_LDS__ 10*6ac9f479SMike Frysinger #define __U_BOOT_LDS__ 11*6ac9f479SMike Frysinger 12*6ac9f479SMike Frysinger /* See if the linker version is at least the specified version */ 13*6ac9f479SMike Frysinger #define LD_AT_LEAST(major, minor) \ 14*6ac9f479SMike Frysinger ((major > LD_MAJOR) || (major == LD_MAJOR && minor <= LD_MINOR)) 15*6ac9f479SMike Frysinger 16*6ac9f479SMike Frysinger /* 17*6ac9f479SMike Frysinger * Linker versions prior to 2.16 don't understand the builtin 18*6ac9f479SMike Frysinger * functions SORT_BY_ALIGNMENT() and SORT_BY_NAME(), so disable these 19*6ac9f479SMike Frysinger */ 20*6ac9f479SMike Frysinger #if !LD_AT_LEAST(2, 16) 21*6ac9f479SMike Frysinger # define SORT_BY_ALIGNMENT(x) x 22*6ac9f479SMike Frysinger # define SORT_BY_NAME(x) x 23*6ac9f479SMike Frysinger #endif 24*6ac9f479SMike Frysinger 25*6ac9f479SMike Frysinger #endif 26