Skip to content
  • Cyril Bur's avatar
    powerpc/configs: Replace pseries_le_defconfig with a Makefile target using merge_config · ea4d1a87
    Cyril Bur authored
    
    
    Rather than continuing to maintain a copy of pseries_defconfig with
    CONFIG_CPU_LITTLE_ENDIAN enabled, use the generic merge_config script
    and use an le.config to enable little endian on top of pseries_defconfig
    without the need for a duplicated _defconfig file.
    
    This method will require less maintenance in the future and will ensure
    that both 'defconfigs' are always in sync.
    
    It is worth noting that the seemingly more simple approach of:
    
      pseries_le_defconfig: pseries_defconfig
      	$(Q)$(MAKE) le.config
    
    Will not work when building using O=builddir.
    
    The obvious fix to that:
    
      pseries_le_defconfig:
      	$(Q)$(MAKE) -f $(srctree)/Makefile pseries_defconfig le.config
    
    Also does not work. This is because if we have for example:
    
    config FOO
    	depends on CPU_BIG_ENDIAN
    	select BAR
    
    Then BAR will be enabled by the first call to kconfig (via
    pseries_defconfig), and then will remain enabled after we merge
    le.config, even though FOO will have been turned off.
    
    The solution is to ensure to only invoke the kconfig logic once, after
    we have merged all the config fragments. This ensures nothing is
    select'ed on that should then be disabled by the later merged configs.
    This is done through the explicit call to make olddefconfig
    
    Signed-off-by: default avatarCyril Bur <cyrilbur@gmail.com>
    Reviewed-by: default avatarSamuel Mendoza-Jonas <sam.mj@au1.ibm.com>
    [mpe: Massage change log, fix white space and use ARCH not SRCARCH]
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    ea4d1a87