# git rev-parse -q --verify 0d5b122f39495251dbd3be72fc3e9ff18c7460ad^{commit} 0d5b122f39495251dbd3be72fc3e9ff18c7460ad already have revision, skipping fetch # git checkout -q -f -B kisskb 0d5b122f39495251dbd3be72fc3e9ff18c7460ad # git clean -qxdf # git log -1 commit 0d5b122f39495251dbd3be72fc3e9ff18c7460ad Author: Michael Ellerman Date: Mon Nov 21 21:14:35 2016 +1100 powerpc/boot: Fix rebuild when changing kernel endian Now that we don't set ARCH incorrectly when calling the boot Makefile, we can use the generic cpp_lds_S rule for converting our zImage.lds.S into zImage.lds. The main advantage of using the generic rule is that it correctly uses if_changed, which means we correctly regenerate the linker script when switching endian. Fixing that means we are finally able to build one endian and then rebuild the other endian without requiring to clean between builds. Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < git log --format=%s --max-count=1 0d5b122f39495251dbd3be72fc3e9ff18c7460ad # < make -j 48 ARCH=powerpc O=/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- allnoconfig # make -j 48 ARCH=powerpc O=/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- make[1]: Entering directory '/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc' GEN ./Makefile scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config/kernel.release GEN ./Makefile UPD include/config/kernel.release WRAP arch/powerpc/include/generated/asm/clkdev.h WRAP arch/powerpc/include/generated/asm/div64.h WRAP arch/powerpc/include/generated/asm/export.h WRAP arch/powerpc/include/generated/asm/irq_regs.h WRAP arch/powerpc/include/generated/asm/irq_work.h WRAP arch/powerpc/include/generated/asm/local64.h WRAP arch/powerpc/include/generated/asm/mcs_spinlock.h WRAP arch/powerpc/include/generated/asm/preempt.h WRAP arch/powerpc/include/generated/asm/rwsem.h WRAP arch/powerpc/include/generated/asm/vtime.h CHK include/generated/uapi/linux/version.h UPD include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h UPD include/generated/utsrelease.h Using /home/kisskb/slave/src as source for kernel HOSTCC scripts/sortextable HOSTCC scripts/dtc/dtc.o CC scripts/mod/empty.o HOSTCC scripts/dtc/flattree.o HOSTCC scripts/mod/mk_elfconfig HOSTCC scripts/dtc/fstree.o CC scripts/mod/devicetable-offsets.s HOSTCC scripts/dtc/data.o HOSTCC scripts/dtc/livetree.o HOSTCC scripts/dtc/treesource.o HOSTCC scripts/dtc/checks.o HOSTCC scripts/dtc/srcpos.o HOSTCC scripts/dtc/util.o SHIPPED scripts/dtc/dtc-lexer.lex.c SHIPPED scripts/dtc/dtc-parser.tab.h SHIPPED scripts/dtc/dtc-parser.tab.c HOSTCC scripts/dtc/dtc-lexer.lex.o HOSTCC scripts/dtc/dtc-parser.tab.o GEN scripts/mod/devicetable-offsets.h MKELF scripts/mod/elfconfig.h HOSTCC scripts/mod/modpost.o HOSTCC scripts/mod/file2alias.o HOSTCC scripts/mod/sumversion.o HOSTLD scripts/dtc/dtc HOSTLD scripts/mod/modpost CHK include/generated/timeconst.h CC kernel/bounds.s UPD include/generated/timeconst.h CHK include/generated/bounds.h UPD include/generated/bounds.h CC arch/powerpc/kernel/asm-offsets.s CHK include/generated/asm-offsets.h UPD include/generated/asm-offsets.h CALL /home/kisskb/slave/src/scripts/checksyscalls.sh CC init/main.o CHK include/generated/compile.h CC init/do_mounts.o LD usr/built-in.o CC init/noinitramfs.o CC init/init_task.o UPD include/generated/compile.h CC init/version.o CC arch/powerpc/mm/fault.o CC arch/powerpc/mm/mem.o AS arch/powerpc/lib/string.o LD arch/powerpc/sysdev/built-in.o CC arch/powerpc/mm/pgtable.o CC arch/powerpc/lib/alloc.o CC arch/powerpc/mm/mmap.o AS arch/powerpc/lib/crtsavres.o CC arch/powerpc/mm/init_32.o CC arch/powerpc/lib/code-patching.o CC arch/powerpc/mm/pgtable_32.o CC arch/powerpc/lib/feature-fixups.o AS arch/powerpc/lib/div64.o CC arch/powerpc/mm/ppc_mmu_32.o LD arch/powerpc/platforms/built-in.o AS arch/powerpc/mm/hash_low_32.o AS arch/powerpc/lib/copy_32.o CC arch/powerpc/mm/hugetlbpage.o AS arch/powerpc/lib/checksum_32.o CC arch/powerpc/mm/mmu_context_hash32.o CC arch/powerpc/lib/checksum_wrappers.o CC arch/powerpc/mm/tlb_hash32.o LD arch/powerpc/math-emu/built-in.o CC arch/powerpc/kernel/cputable.o CC arch/powerpc/kernel/ptrace.o CC arch/powerpc/kernel/syscalls.o CC arch/powerpc/kernel/irq.o CC arch/powerpc/kernel/align.o CC arch/powerpc/kernel/signal_32.o CC arch/powerpc/kernel/pmc.o CC arch/powerpc/kernel/vdso.o CC arch/powerpc/kernel/sysfs.o CC arch/powerpc/kernel/signal.o CC arch/powerpc/kernel/cacheinfo.o CC arch/powerpc/kernel/idle.o CPP arch/powerpc/kernel/systbl_chk.i CC arch/powerpc/kernel/traps.o CC arch/powerpc/kernel/setup-common.o CC arch/powerpc/kernel/process.o CC arch/powerpc/kernel/prom.o CC arch/powerpc/kernel/time.o AS arch/powerpc/kernel/misc.o AS arch/powerpc/kernel/misc_32.o CC arch/powerpc/kernel/of_platform.o CC arch/powerpc/kernel/prom_parse.o CC arch/powerpc/kernel/dma.o CC arch/powerpc/kernel/io.o AS arch/powerpc/kernel/idle_6xx.o CC arch/powerpc/kernel/udbg.o LD arch/powerpc/crypto/built-in.o AS arch/powerpc/kernel/cpu_setup_6xx.o AS arch/powerpc/kernel/l2cr_6xx.o LD arch/powerpc/net/built-in.o AS arch/powerpc/kernel/entry_32.o CC arch/powerpc/kernel/setup_32.o CC arch/powerpc/kernel/pci_32.o CC arch/powerpc/kernel/pci-common.o VDSO32A arch/powerpc/kernel/vdso32/sigtramp.o LDS arch/powerpc/kernel/vdso32/vdso32.lds CC arch/powerpc/kernel/pci_of_scan.o CC arch/powerpc/kernel/iomap.o AS arch/powerpc/kernel/head_32.o VDSO32A arch/powerpc/kernel/vdso32/gettimeofday.o LDS arch/powerpc/kernel/vmlinux.lds VDSO32A arch/powerpc/kernel/vdso32/datapage.o VDSO32A arch/powerpc/kernel/vdso32/note.o VDSO32A arch/powerpc/kernel/vdso32/cacheflush.o AS arch/powerpc/kernel/fpu.o LD arch/powerpc/lib/built-in.o CALL /home/kisskb/slave/src/arch/powerpc/kernel/systbl_chk.sh LD certs/built-in.o AS arch/powerpc/kernel/systbl.o VDSO32L arch/powerpc/kernel/vdso32/vdso32.so.dbg LD arch/powerpc/mm/built-in.o OBJCOPY arch/powerpc/kernel/vdso32/vdso32.so AS arch/powerpc/kernel/vdso32/vdso32_wrapper.o LD arch/powerpc/kernel/vdso32/built-in.o LD ipc/built-in.o CC security/commoncap.o CC security/min_addr.o LD crypto/built-in.o CC kernel/fork.o CC kernel/panic.o LD init/mounts.o CC kernel/exit.o CC kernel/resource.o CC kernel/sysctl.o LD block/built-in.o CC kernel/exec_domain.o CC kernel/softirq.o CC kernel/user.o CC kernel/ptrace.o CC kernel/cpu.o CC kernel/sysctl_binary.o CC kernel/capability.o CC kernel/signal.o CC kernel/kmod.o CC kernel/workqueue.o CC kernel/pid.o CC kernel/sys_ni.o CC kernel/kthread.o CC kernel/task_work.o CC kernel/nsproxy.o CC kernel/sys.o CC kernel/params.o CC kernel/extable.o CC kernel/notifier.o CC kernel/ksysfs.o CC kernel/cred.o CC kernel/async.o CC kernel/reboot.o CC kernel/range.o CC kernel/smpboot.o CC kernel/ucount.o LD init/built-in.o CC fs/open.o LD kernel/livepatch/built-in.o LD sound/built-in.o CC kernel/power/qos.o CC fs/read_write.o CC kernel/locking/mutex.o CC kernel/irq/irqdesc.o CC fs/file_table.o CC mm/filemap.o CC kernel/printk/printk.o CC kernel/rcu/update.o LD firmware/built-in.o CC kernel/dma.o CC kernel/locking/semaphore.o CC kernel/up.o CC kernel/elfcore.o CC kernel/memremap.o LD net/built-in.o CC fs/super.o CC kernel/locking/rwsem.o CC fs/char_dev.o CC kernel/sched/core.o CC kernel/rcu/sync.o CC kernel/sched/loadavg.o LD arch/powerpc/kernel/built-in.o CC kernel/rcu/tiny.o CC kernel/time/time.o CC fs/stat.o CC kernel/time/timer.o CC kernel/time/hrtimer.o CC kernel/irq/handle.o CC kernel/irq/manage.o CC kernel/irq/spurious.o CC kernel/irq/resend.o CC kernel/irq/chip.o CC kernel/time/itimer.o LD virt/lib/built-in.o CC kernel/time/posix-timers.o CC kernel/irq/dummychip.o LD virt/built-in.o CC kernel/time/posix-cpu-timers.o CC kernel/irq/devres.o CC kernel/time/timekeeping.o CC fs/exec.o CC kernel/time/ntp.o CC kernel/locking/percpu-rwsem.o CC kernel/locking/rwsem-xadd.o CC fs/namei.o CC fs/pipe.o CC fs/fcntl.o CC kernel/time/clocksource.o CC fs/ioctl.o /home/kisskb/slave/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /home/kisskb/slave/src/kernel/printk/printk.c:183:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] LD security/built-in.o CC fs/readdir.o CC kernel/time/jiffies.o CC kernel/time/timer_list.o CC fs/select.o CC kernel/time/timeconv.o CC kernel/sched/clock.o CC fs/dcache.o CC kernel/irq/irqdomain.o LD drivers/amba/built-in.o LD kernel/rcu/built-in.o LD kernel/power/built-in.o CC fs/inode.o CC kernel/sched/cputime.o CC fs/attr.o CC kernel/sched/fair.o CC fs/bad_inode.o CC kernel/sched/rt.o CC kernel/sched/idle_task.o CC kernel/sched/deadline.o CC fs/file.o CC lib/lockref.o LD drivers/auxdisplay/built-in.o LD kernel/printk/built-in.o CC fs/namespace.o CC fs/filesystems.o CC lib/bcd.o CC fs/seq_file.o CC kernel/time/timecounter.o CC kernel/time/posix-clock.o CC fs/xattr.o LD kernel/locking/built-in.o CC kernel/time/alarmtimer.o CC kernel/sched/stop_task.o CC lib/div64.o CC fs/libfs.o CC lib/sort.o CC lib/parser.o CC kernel/time/clockevents.o CC kernel/time/tick-common.o CC fs/fs-writeback.o CC fs/pnode.o CC lib/halfmd4.o CC mm/mempool.o CC fs/splice.o CC lib/debug_locks.o CC fs/sync.o CC fs/utimes.o CC drivers/base/component.o CC kernel/sched/wait.o CC fs/stack.o CC drivers/base/core.o CC kernel/sched/swait.o CC drivers/base/bus.o CC lib/random32.o CC lib/bust_spinlocks.o CC kernel/sched/completion.o CC fs/fs_struct.o CC fs/statfs.o CC fs/fs_pin.o CC fs/nsfs.o CC drivers/base/dd.o CC drivers/base/syscore.o LD drivers/block/built-in.o CC fs/no-block.o CC lib/kasprintf.o CC lib/bitmap.o LD fs/devpts/built-in.o CC kernel/sched/idle.o LD fs/exofs/built-in.o CC drivers/base/driver.o LD drivers/bus/built-in.o LD kernel/irq/built-in.o LD fs/quota/built-in.o CC lib/scatterlist.o CC lib/gcd.o CC fs/binfmt_elf.o CC mm/oom_kill.o CC mm/maccess.o LD drivers/cdrom/built-in.o CC lib/lcm.o CC mm/page_alloc.o CC lib/list_sort.o CC fs/ramfs/file-mmu.o CC fs/ramfs/inode.o LD drivers/char/ipmi/built-in.o LD fs/notify/dnotify/built-in.o CC lib/flex_array.o CC drivers/char/random.o LD drivers/clocksource/built-in.o CC lib/uuid.o LD fs/notify/fanotify/built-in.o CC drivers/char/mem.o CC lib/iov_iter.o CC lib/clz_ctz.o LD drivers/firewire/built-in.o LD fs/notify/inotify/built-in.o LD drivers/clk/bcm/built-in.o CC drivers/base/class.o LD drivers/clk/mvebu/built-in.o LD drivers/clk/ti/built-in.o CC lib/bsearch.o CC lib/find_bit.o LD fs/notify/built-in.o CC drivers/base/cpu.o CC drivers/base/platform.o CC drivers/base/firmware.o CC lib/llist.o LD drivers/hwtracing/intel_th/built-in.o CC mm/swap.o CC drivers/base/init.o CC mm/page-writeback.o CC mm/readahead.o LD drivers/idle/built-in.o CC lib/memweight.o CC drivers/irqchip/irqchip.o LD drivers/clk/built-in.o LD drivers/lguest/built-in.o CC lib/kfifo.o CC drivers/base/map.o CC lib/percpu-refcount.o LD drivers/gpu/vga/built-in.o CC lib/percpu_ida.o CC lib/rhashtable.o CC drivers/base/devres.o CC lib/once.o CC lib/reciprocal_div.o LD kernel/sched/built-in.o CC lib/string_helpers.o LD drivers/macintosh/built-in.o CC mm/truncate.o LD drivers/firmware/broadcom/built-in.o CC lib/hexdump.o LD drivers/mfd/built-in.o CC lib/kstrtox.o LD drivers/i2c/algos/built-in.o CC lib/iomap_copy.o CC lib/pci_iomap.o LD drivers/i2c/busses/built-in.o CC lib/hweight.o LD kernel/time/built-in.o CC lib/devres.o CC lib/bitrev.o LD drivers/firmware/meson/built-in.o CC drivers/base/attribute_container.o LD drivers/i2c/muxes/built-in.o LD drivers/gpu/drm/bridge/built-in.o HOSTCC lib/gen_crc32table LD drivers/mmc/built-in.o LD kernel/built-in.o CC drivers/base/transport_class.o CC drivers/base/topology.o CC lib/syscall.o LD drivers/firmware/built-in.o LD drivers/i2c/built-in.o CC lib/atomic64.o CC lib/strncpy_from_user.o LD drivers/net/built-in.o CC lib/chacha20.o CC lib/argv_split.o LD drivers/gpu/drm/hisilicon/built-in.o CC lib/strnlen_user.o CC mm/vmscan.o LD drivers/nfc/built-in.o LD drivers/irqchip/built-in.o CC drivers/base/container.o LD drivers/misc/cb710/built-in.o CC drivers/char/misc.o CC drivers/base/cacheinfo.o CC drivers/base/property.o LD drivers/gpu/drm/i2c/built-in.o LD drivers/misc/eeprom/built-in.o LD drivers/platform/built-in.o LD drivers/media/common/b2c2/built-in.o LD drivers/nvme/host/built-in.o LD drivers/misc/lis3lv02d/built-in.o LD fs/ramfs/ramfs.o CC lib/cmdline.o CC lib/ctype.o CC lib/dec_and_lock.o LD fs/ramfs/built-in.o CC lib/decompress.o CC drivers/base/dma-mapping.o LD drivers/base/power/built-in.o CC lib/dma-noop.o LD drivers/power/built-in.o CC lib/dump_stack.o LD drivers/misc/ti-st/built-in.o CC lib/earlycpio.o LD drivers/pwm/built-in.o LD drivers/nvme/target/built-in.o CC drivers/of/base.o CC lib/extable.o CC drivers/of/device.o LD drivers/misc/mic/bus/built-in.o LD drivers/media/common/saa7146/built-in.o CC lib/fdt.o CC lib/fdt_empty_tree.o CC mm/shmem.o CC drivers/of/platform.o LD drivers/gpu/drm/panel/built-in.o CC lib/fdt_ro.o CC lib/fdt_sw.o CC lib/fdt_strerror.o CC lib/fdt_rw.o LD drivers/nvme/built-in.o LD drivers/misc/mic/built-in.o CC lib/fdt_wip.o CC mm/util.o LD drivers/gpu/drm/omapdrm/displays/built-in.o LD drivers/media/common/v4l2-tpg/built-in.o LD drivers/media/common/siano/built-in.o LD drivers/soc/fsl/built-in.o CC drivers/pci/access.o CC lib/flex_proportions.o CC lib/int_sqrt.o CC lib/idr.o CC drivers/pci/bus.o LD drivers/soc/bcm/built-in.o LD drivers/usb/host/built-in.o CC lib/ioremap.o LD drivers/misc/built-in.o CC lib/is_single_threaded.o CC lib/irq_regs.o LD drivers/gpu/drm/tilcdc/built-in.o LD drivers/tty/ipwireless/built-in.o LD drivers/media/common/built-in.o CC lib/klist.o LD drivers/video/backlight/built-in.o CC lib/kobject.o LD drivers/char/agp/built-in.o CC lib/kobject_uevent.o CC drivers/of/fdt.o LD drivers/tty/serial/built-in.o CC drivers/pci/probe.o CC lib/nmi_backtrace.o LD drivers/soc/built-in.o CC lib/md5.o LD drivers/gpu/drm/omapdrm/dss/built-in.o LD drivers/usb/built-in.o LD drivers/tty/vt/built-in.o CC lib/nodemask.o CC lib/plist.o CC lib/radix-tree.o CC lib/ratelimit.o LD drivers/video/fbdev/core/built-in.o LD drivers/gpu/drm/omapdrm/built-in.o CC drivers/pci/host-bridge.o LD drivers/char/built-in.o CC mm/mmzone.o CC mm/vmstat.o CC lib/rbtree.o LD drivers/media/firewire/built-in.o CC mm/mm_init.o LD drivers/tty/built-in.o CC lib/seq_buf.o CC mm/backing-dev.o CC lib/sha1.o CC lib/show_mem.o CC lib/timerqueue.o CC lib/string.o CC drivers/of/fdt_address.o CC lib/vsprintf.o CC lib/win_minmax.o CC mm/mmu_context.o LD drivers/gpu/drm/built-in.o GEN lib/crc32table.h CC mm/percpu.o CC lib/crc32.o CC mm/compaction.o CC mm/slab_common.o CC mm/vmacache.o CC drivers/pci/remove.o CC mm/interval_tree.o LD drivers/media/i2c/soc_camera/built-in.o LD drivers/video/fbdev/omap2/omapfb/displays/built-in.o CC drivers/of/irq.o CC drivers/of/address.o LD fs/built-in.o LD drivers/gpu/built-in.o LD drivers/media/i2c/built-in.o CC mm/list_lru.o CC drivers/of/of_pci.o CC mm/debug.o CC mm/workingset.o CC drivers/of/of_pci_irq.o LD drivers/video/fbdev/omap2/omapfb/dss/built-in.o CC mm/gup.o LD drivers/video/fbdev/omap2/omapfb/built-in.o CC mm/highmem.o CC drivers/of/of_reserved_mem.o CC mm/memory.o CC mm/mincore.o LD drivers/media/mmc/siano/built-in.o CC drivers/pci/pci.o CC drivers/pci/pci-driver.o CC drivers/pci/search.o CC mm/mlock.o LD drivers/video/fbdev/omap2/built-in.o LD drivers/media/mmc/built-in.o CC mm/mmap.o CC mm/mprotect.o LD drivers/base/built-in.o LD drivers/video/fbdev/built-in.o CC mm/mremap.o CC drivers/pci/pci-sysfs.o CC mm/msync.o CC drivers/pci/setup-res.o CC drivers/pci/rom.o CC mm/rmap.o CC mm/vmalloc.o CC mm/pagewalk.o CC mm/pgtable-generic.o LD drivers/video/built-in.o CC mm/init-mm.o CC drivers/pci/irq.o CC mm/nobootmem.o CC mm/memblock.o CC mm/dmapool.o LD drivers/media/platform/omap/built-in.o LD drivers/media/spi/built-in.o CC mm/slub.o CC drivers/pci/vpd.o LD drivers/media/rc/keymaps/built-in.o LD drivers/media/tuners/built-in.o LD drivers/media/platform/built-in.o LD drivers/media/rc/built-in.o CC drivers/pci/setup-bus.o CC drivers/pci/vc.o CC drivers/pci/of.o CC drivers/pci/syscall.o LD drivers/pci/host/built-in.o LD drivers/media/pci/ngene/built-in.o LD drivers/media/pci/pt1/built-in.o LD drivers/media/pci/saa7146/built-in.o LD drivers/media/pci/smipcie/built-in.o LD drivers/media/pci/b2c2/built-in.o LD drivers/media/pci/dm1105/built-in.o LD drivers/media/pci/netup_unidvb/built-in.o LD drivers/media/pci/pluto2/built-in.o LD drivers/media/pci/ddbridge/built-in.o LD drivers/media/pci/pt3/built-in.o LD drivers/media/pci/mantis/built-in.o LD drivers/media/pci/ttpci/built-in.o LD drivers/media/usb/dvb-usb-v2/built-in.o LD drivers/media/usb/s2255/built-in.o LD drivers/media/usb/dvb-usb/built-in.o LD drivers/media/usb/stkwebcam/built-in.o LD drivers/media/usb/siano/built-in.o LD drivers/media/pci/built-in.o LD drivers/media/usb/ttusb-dec/built-in.o LD drivers/media/usb/ttusb-budget/built-in.o LD drivers/media/usb/zr364xx/built-in.o LD drivers/media/usb/b2c2/built-in.o LD drivers/media/usb/built-in.o LD drivers/of/built-in.o LD drivers/media/built-in.o AR lib/lib.a EXPORTS lib/lib-ksyms.o LD lib/built-in.o LD mm/built-in.o LD drivers/pci/built-in.o LD drivers/built-in.o LD vmlinux.o MODPOST vmlinux.o GEN .version CHK include/generated/compile.h UPD include/generated/compile.h CC init/version.o LD init/built-in.o LD vmlinux SORTEX vmlinux SYSMAP System.map /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-strip -s -R .comment vmlinux -o arch/powerpc/boot/vmlinux.strip make[1]: Leaving directory '/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc' Completed OK # rm -rf /home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc # Build took: 0:00:11.772222