From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756485Ab1AMACh (ORCPT ); Wed, 12 Jan 2011 19:02:37 -0500 Received: from cpoproxy3-pub.bluehost.com ([67.222.54.6]:42149 "HELO cpoproxy3-pub.bluehost.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1755575Ab1AMACd (ORCPT ); Wed, 12 Jan 2011 19:02:33 -0500 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=virtuousgeek.org; h=Received:Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References:X-Mailer:Mime-Version:Content-Type:Content-Transfer-Encoding:X-Identified-User; b=QjWI1GBhmMUfx3D4jAZ8vwxOkjdW+NdQ0/ElKQYgLB1dK7W9AAnhLDdTFWGTsJCfuh7QdgCZQ89ZQc6ICwaJ3K72WfTU9NS6BImifJhhAIZOq4WaTjhzweOr7J5eeBwT; Date: Wed, 12 Jan 2011 16:02:29 -0800 From: Jesse Barnes To: Cc: , , , , , Subject: Re: CONFIG_NLS=m resulting in undefined reference to utf16s_to_utf8s causing build failure Message-ID: <20110112160229.7b8d82c1@jbarnes-desktop> In-Reply-To: <20110112203414.GA5657@fedora14-r610.oslab.blr.amer.dell.com> References: <20110112203414.GA5657@fedora14-r610.oslab.blr.amer.dell.com> X-Mailer: Claws Mail 3.7.6 (GTK+ 2.18.9; x86_64-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Identified-User: {10642:box514.bluehost.com:virtuous:virtuousgeek.org} {sentby:smtp auth 67.174.193.198 authed with jbarnes@virtuousgeek.org} Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 12 Jan 2011 12:10:17 -0800 wrote: > Hello, > > As described in the post http://marc.info/?l=linux-next&m=129478755528194&w=2 > setting CONFIG_NLS=m (generated by 'make allmodconfig) is causing a build > failure on linux-next as following while compiling the patch > http://marc.info/?l=linux-pci&m=129313294112736&w=1 ([PATCH V2] Export > ACPI _DSM provided firmware instance number and string to sysfs) > > drivers/built-in.o: In function `dsm_label_utf16s_to_utf8s': > /usr/src/Linux-Next/linux-next/drivers/pci/pci-label.c:195: undefined reference to `utf16s_to_utf8s' > make: *** [.tmp_vmlinux1] Error 1 > > The drivers/pci/pci-label.c is compiled as part of vmlinux as defined by > the makefile drivers/pci/Makefile. > > # > # ACPI Related PCI FW Functions > # ACPI _DSM provided firmware instance and string name > # > obj-$(CONFIG_ACPI) += pci-acpi.o pci-label.o > > # SMBIOS provided firmware instance and labels > obj-$(CONFIG_DMI) += pci-label.o > > This could be prevented by one of the following methods - > > * forcing CONFIG_NLS=y if CONFIG_PCI=y > * move `utf16s_to_utf8s' out of nls_base.c to a new file to be always > built into vmlinux > > Please correct me if i missed something here and let me know what would be the right > way to fix this build failure. So there's no other ACPI code that depends on this function? I'd hate to make PCI depend on NLS, so assuming ACPI doesn't need it (in which case the select or depend should be there), I guess it should be pulled into a common file that will always be included. Thanks, -- Jesse Barnes, Intel Open Source Technology Center