From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,eed2d3a237734411 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII Path: g2news1.google.com!news4.google.com!feeder3.cambriumusenet.nl!feed.tweaknews.nl!194.134.4.91.MISMATCH!news2.euro.net!news.mixmin.net!aioe.org!not-for-mail From: =?iso-8859-15?Q?Yannick_Duch=EAne_=28Hibou57=29?= Newsgroups: comp.lang.ada Subject: Re: Shared library project Date: Thu, 10 Jun 2010 15:04:29 +0200 Organization: Ada At Home Message-ID: References: <9dcc29a0-fb04-4a2a-9f3a-1678a509358c@o4g2000vbo.googlegroups.com> <22fd730b-88c1-4d04-9eaf-8c21d802faec@t10g2000yqg.googlegroups.com> NNTP-Posting-Host: V5c8K/i9W6tPzBeTPWRJ1g.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15; format=flowed; delsp=yes Content-Transfer-Encoding: Quoted-Printable X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 User-Agent: Opera Mail/10.53 (Win32) Xref: g2news1.google.com comp.lang.ada:11586 Date: 2010-06-10T15:04:29+02:00 List-Id: Le Thu, 10 Jun 2010 14:50:17 +0200, Andrei Krivoshei = a =E9crit: > My original intent: > > The dinamic library project, say A project, (the final product) > shoould import some another project, say B project, (collection of > functions and objects- tagged records and etc). > I am myself the author of the both projects, therefore for me doesn't > matter what kind of project I select for B. But the final library > project must be compiled correctly. So B has to be a library... which seems OK after what follows. > Ok, if "A library project can only import library projects.", then why= > I cannot import the static library project into dynamic library > project? > If I try do this, the gnatmake gives: [mlcb_fe_dll.gpr:3:09: shared > library project "mlcb_fe_dll" cannot import static library project > "sp_lib"] Did you try to make all library dynamic ? Are there some reason which = disallows this ? > Thus, if I want to build the dynamic library project, which uses > another projects, then I need to change the type of those projects to > 'dynamic', So you may have a DLL depending on another DLL, which is legal on Window= s. > and consequently, the resulting library, A.dll (for the > Windows) MUST be supplyed by whole complect of others libraries > (B.dll, C.dll, ...), which were imported into project A? I am not sure I have understood. If A.dll depends on B.dll and C.dll, th= is = should be OK. Whar kind of dependencies do you have ? Are they like the = = ones I give ? I am bit surprised, as it should be possible to build a DLL using static= = library. Unfortunately, I have never experimented this with GNAT. Anyway= , = feel free to give more details. -- = There is even better than a pragma Assert: a SPARK --# check. --# check C and WhoKnowWhat and YouKnowWho; --# assert Ada; -- i.e. forget about previous premises which leads to conclusion -- and start with new conclusion as premise.