From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: emacs-dynamic-module in Emacs Git? Date: Sat, 29 Nov 2014 19:45:04 +0200 Message-ID: <831tolc34v.fsf@gnu.org> References: <87wq6tu5m5.fsf@kima.orebokech.com> <85h9xwhpy9.fsf@stephe-leake.org> <87k32sh50f.fsf@lifelogs.com> <85tx1rg64e.fsf_-_@stephe-leake.org> <87siha7r3b.fsf@lifelogs.com> <87lhmz4mtj.fsf@lifelogs.com> <87sih575rc.fsf@lifelogs.com> <8361dyaqf1.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1417283148 14747 80.91.229.3 (29 Nov 2014 17:45:48 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 29 Nov 2014 17:45:48 +0000 (UTC) Cc: emacs-devel@gnu.org To: aurelien.aptel+emacs@gmail.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Nov 29 18:45:41 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Xum5U-0002ob-HS for ged-emacs-devel@m.gmane.org; Sat, 29 Nov 2014 18:45:40 +0100 Original-Received: from localhost ([::1]:48361 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xum5U-0005PL-6l for ged-emacs-devel@m.gmane.org; Sat, 29 Nov 2014 12:45:40 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52716) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xum51-0005PF-J0 for emacs-devel@gnu.org; Sat, 29 Nov 2014 12:45:17 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xum4v-0000UR-JT for emacs-devel@gnu.org; Sat, 29 Nov 2014 12:45:11 -0500 Original-Received: from mtaout25.012.net.il ([80.179.55.181]:36128) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xum4v-0000Qy-An for emacs-devel@gnu.org; Sat, 29 Nov 2014 12:45:05 -0500 Original-Received: from conversion-daemon.mtaout25.012.net.il by mtaout25.012.net.il (HyperSendmail v2007.08) id <0NFT00F00AFTXU00@mtaout25.012.net.il> for emacs-devel@gnu.org; Sat, 29 Nov 2014 19:40:44 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout25.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NFT00DTYAFWYS10@mtaout25.012.net.il>; Sat, 29 Nov 2014 19:40:44 +0200 (IST) In-reply-to: <8361dyaqf1.fsf@gnu.org> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 80.179.55.181 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:178466 Archived-At: > Date: Sat, 29 Nov 2014 19:05:06 +0200 > From: Eli Zaretskii > Cc: emacs-devel@gnu.org > > . It seems to me that the modules call functions implemented by > Emacs, like make_number and Fmember, on the assumption that > calling any Emacs function will "just work". This is false for > Windows (the link command that produces the shared object will > fail), unless we mark such exportable functions and build an > import library that will be passed to the linker when the module's > shared object is built. Likewise with global variables defined by > Emacs. Alternatively, I think libltdl itself supports dynamic linking with functions in the main module (Emacs itself), but that would require an explicit lt_dlsym call for every Emacs function a module needs to call. In any case, just calling a function is not going to cut it.