From owner-freebsd-ports@freebsd.org Mon Oct 30 16:17:49 2017 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 64D7CE60D0B for ; Mon, 30 Oct 2017 16:17:49 +0000 (UTC) (envelope-from gurenchan@gmail.com) Received: from mail-io0-x22b.google.com (mail-io0-x22b.google.com [IPv6:2607:f8b0:4001:c06::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2AF3C68B2B for ; Mon, 30 Oct 2017 16:17:49 +0000 (UTC) (envelope-from gurenchan@gmail.com) Received: by mail-io0-x22b.google.com with SMTP id b186so28418007iof.8 for ; Mon, 30 Oct 2017 09:17:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=MgLbowm6F5dndlC9CgDyjDAXrqQUDlOKlB/K+3Wymz8=; b=OF8naEvZq/FKS+cdNtnpHsKAOy354ocCp0T1Gh+MgNQlVXmkrEFT+uti6cZCADI3Vj 584o5twaNEteorzEVvlZohNQW9ek9G7AecXDCGj8BLyLDHOUhSU82QovMN9++bIX03EE YCD6Q9CiQBQT0BZFjaGO0EQTX0q/x9bqx6m2buH/yXC+e7Jewk3XVlAFIYbYGn0xX5vV bhAo3z7Fu72ue9zBEiCfEvxWgHpkBYvHNd5GnWMticZBvczW2/gnMQShZUb85wxksd0Y Fh4FNsSfMfQ8r1WfnqBMPNQGA7KePndbz1breSK2RbLJjJpCAdPmuln/LdnmUnBcohcV bRjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=MgLbowm6F5dndlC9CgDyjDAXrqQUDlOKlB/K+3Wymz8=; b=UtUlh3QAnLa8KLKxCl76JY2h5pmCPenKeisIey6lxJGDxe8jDYXOvzhFDRSJ0aKo8S HNrbDfeiMueEdOivE41no/AbTXB0gMkjVmY4XtRbGyK+316fFjoX+bjZ7gNOk0KAjxUP wzqnpkxak3e/YYzxieBIKBt5VMN1nXBT9f3Pl6HtPKakd/ld3U6I5xrHuWEWhCwRDC05 5aC8Jd4xxn/bMguZ2gD2ezPbyyYl1AG3VMLpLMMW10a2KqJDJbCjB/UeQq6j5RmTM62n +GE2Cr5VSYOulwUk+Vbjlz1aCcwByGAln1BGbLznpVoph82s6mDOQAfc471TMXep3irc YMbA== X-Gm-Message-State: AMCzsaXFUub70cuGmvL257sjcW/nqCF1wrXO3mKVwK1XzSwTdRHI3WSm rfvBCO1YVsODYhfXokqcOFBT0r9bWKVVyksKb0273A== X-Google-Smtp-Source: ABhQp+T+ch5pScRC117eUHFLa8N+llwsAb62AQqdsLPRikT+eEeCu3FjS4JJGW0JzyqqR4Blit/K69yys3GE5us/IbU= X-Received: by 10.107.114.5 with SMTP id n5mr11822244ioc.291.1509380267842; Mon, 30 Oct 2017 09:17:47 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.8.66 with HTTP; Mon, 30 Oct 2017 09:17:47 -0700 (PDT) In-Reply-To: References: From: blubee blubeeme Date: Tue, 31 Oct 2017 00:17:47 +0800 Message-ID: Subject: Re: ports with no SONAME To: FreeBSD Ports Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.23 X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 30 Oct 2017 16:17:49 -0000 Can anyone help with this library. I ran objdump on it and got this output ---------------------------------------------- objdump -x work/stage/usr/local/lib/libtogl.so work/stage/usr/local/lib/libtogl.so: file format elf64-x86-64-freebsd work/stage/usr/local/lib/libtogl.so architecture: i386:x86-64, flags 0x00000150: HAS_SYMS, DYNAMIC, D_PAGED start address 0x0000000000002980 Program Header: LOAD off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**21 filesz 0x00000000000070a8 memsz 0x00000000000070a8 flags r-x LOAD off 0x00000000000070b0 vaddr 0x00000000002070b0 paddr 0x00000000002070b0 align 2**21 filesz 0x0000000000000a58 memsz 0x0000000000002a90 flags rw- DYNAMIC off 0x00000000000070f0 vaddr 0x00000000002070f0 paddr 0x00000000002070f0 align 2**3 filesz 0x0000000000000150 memsz 0x0000000000000150 flags rw- STACK off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**3 filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw- Dynamic Section: NEEDED libX11.so.6 NEEDED libGL.so.1 NEEDED libXmu.so.6 HASH 0x120 STRTAB 0xe60 SYMTAB 0x458 STRSZ 0x60b SYMENT 0x18 PLTGOT 0x207258 PLTRELSZ 0x558 PLTREL 0x7 JMPREL 0x2088 RELA 0x1470 RELASZ 0xc18 RELAENT 0x18 RELACOUNT 0x80 Sections: Idx Name Size VMA LMA File off Algn 0 .hash 00000338 0000000000000120 0000000000000120 00000120 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 1 .dynsym 00000a08 0000000000000458 0000000000000458 00000458 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 2 .dynstr 0000060b 0000000000000e60 0000000000000e60 00000e60 2**0 CONTENTS, ALLOC, LOAD, READONLY, DATA 3 .rela.dyn 00000c18 0000000000001470 0000000000001470 00001470 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 4 .rela.plt 00000558 0000000000002088 0000000000002088 00002088 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 5 .plt 000003a0 00000000000025e0 00000000000025e0 000025e0 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 6 .text 0000350f 0000000000002980 0000000000002980 00002980 2**4 CONTENTS, ALLOC, LOAD, READONLY, CODE 7 .rodata 00000a6d 0000000000005e90 0000000000005e90 00005e90 2**4 CONTENTS, ALLOC, LOAD, READONLY, DATA 8 .eh_frame 000007a8 0000000000006900 0000000000006900 00006900 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 9 .data.rel.ro 00000040 00000000002070b0 00000000002070b0 000070b0 2**4 CONTENTS, ALLOC, LOAD, DATA 10 .dynamic 00000150 00000000002070f0 00000000002070f0 000070f0 2**3 CONTENTS, ALLOC, LOAD, DATA 11 .got 00000018 0000000000207240 0000000000207240 00007240 2**3 CONTENTS, ALLOC, LOAD, DATA 12 .got.plt 000001e0 0000000000207258 0000000000207258 00007258 2**3 CONTENTS, ALLOC, LOAD, DATA 13 .data 000006c8 0000000000207440 0000000000207440 00007440 2**4 CONTENTS, ALLOC, LOAD, DATA 14 .bss 00002030 0000000000207b10 0000000000207b10 00007b08 2**4 ALLOC 15 .comment 00000055 0000000000000000 0000000000000000 00007b08 2**0 CONTENTS, READONLY SYMBOL TABLE: no symbols running the same code on libjpeg i see the SONAME field. objdump -x /usr/local/lib/libjpeg.so /usr/local/lib/libjpeg.so: file format elf64-x86-64-freebsd /usr/local/lib/libjpeg.so architecture: i386:x86-64, flags 0x00000150: HAS_SYMS, DYNAMIC, D_PAGED start address 0x0000000000004860 Program Header: LOAD off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**21 filesz 0x000000000007094c memsz 0x000000000007094c flags r-x LOAD off 0x0000000000071000 vaddr 0x0000000000271000 paddr 0x0000000000271000 align 2**21 filesz 0x0000000000000c40 memsz 0x0000000000000c48 flags rw- DYNAMIC off 0x00000000000715c0 vaddr 0x00000000002715c0 paddr 0x00000000002715c0 align 2**3 filesz 0x00000000000001c0 memsz 0x00000000000001c0 flags rw- EH_FRAME off 0x000000000006c8c0 vaddr 0x000000000006c8c0 paddr 0x000000000006c8c0 align 2**2 filesz 0x0000000000000bcc memsz 0x0000000000000bcc flags r-- STACK off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**3 filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw- Dynamic Section: NEEDED libc.so.7 SONAME libjpeg.so.8 INIT 0x4398 FINI 0x49388 HASH 0x158 GNU_HASH 0x5d8 STRTAB 0x18f8 SYMTAB 0xa88 STRSZ 0xa79 SYMENT 0x18 PLTGOT 0x2719c0 PLTRELSZ 0x6f0 PLTREL 0x7 JMPREL 0x3ca8 RELA 0x2520 RELASZ 0x1788 RELAENT 0x18 VERDEF 0x24a8 VERDEFNUM 0x3 VERNEED 0x2500 VERNEEDNUM 0x1 VERSYM 0x2372 RELACOUNT 0xdd Version definitions: 1 0x01 0x0cca1178 libjpeg.so.8 2 0x00 0x0939efd0 LIBJPEGTURBO_8.0 3 0x00 0x04cdfde0 LIBJPEG_8.0 Version References: required from libc.so.7: 0x077a28b0 0x00 04 FBSD_1.0 Sections: Idx Name Size VMA LMA File off Algn 0 .hash 0000047c 0000000000000158 0000000000000158 00000158 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 1 .gnu.hash 000004ac 00000000000005d8 00000000000005d8 000005d8 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 2 .dynsym 00000e70 0000000000000a88 0000000000000a88 00000a88 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 3 .dynstr 00000a79 00000000000018f8 00000000000018f8 000018f8 2**0 CONTENTS, ALLOC, LOAD, READONLY, DATA 4 .gnu.version 00000134 0000000000002372 0000000000002372 00002372 2**1 CONTENTS, ALLOC, LOAD, READONLY, DATA 5 .gnu.version_d 00000054 00000000000024a8 00000000000024a8 000024a8 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 6 .gnu.version_r 00000020 0000000000002500 0000000000002500 00002500 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 7 .rela.dyn 00001788 0000000000002520 0000000000002520 00002520 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 8 .rela.plt 000006f0 0000000000003ca8 0000000000003ca8 00003ca8 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 9 .init 00000013 0000000000004398 0000000000004398 00004398 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 10 .plt 000004b0 00000000000043ac 00000000000043ac 000043ac 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 11 .text 00044b28 0000000000004860 0000000000004860 00004860 2**4 CONTENTS, ALLOC, LOAD, READONLY, CODE 12 .fini 0000000e 0000000000049388 0000000000049388 00049388 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 13 .rodata 00023520 00000000000493a0 00000000000493a0 000493a0 2**4 CONTENTS, ALLOC, LOAD, READONLY, DATA 14 .eh_frame_hdr 00000bcc 000000000006c8c0 000000000006c8c0 0006c8c0 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 15 .eh_frame 000034bc 000000000006d490 000000000006d490 0006d490 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 16 .ctors 00000010 0000000000271000 0000000000271000 00071000 2**3 CONTENTS, ALLOC, LOAD, DATA 17 .dtors 00000010 0000000000271010 0000000000271010 00071010 2**3 CONTENTS, ALLOC, LOAD, DATA 18 .jcr 00000008 0000000000271020 0000000000271020 00071020 2**3 CONTENTS, ALLOC, LOAD, DATA 19 .data.rel.ro 00000590 0000000000271030 0000000000271030 00071030 2**4 CONTENTS, ALLOC, LOAD, DATA 20 .dynamic 000001c0 00000000002715c0 00000000002715c0 000715c0 2**3 CONTENTS, ALLOC, LOAD, DATA 21 .got 00000240 0000000000271780 0000000000271780 00071780 2**3 CONTENTS, ALLOC, LOAD, DATA 22 .got.plt 00000268 00000000002719c0 00000000002719c0 000719c0 2**3 CONTENTS, ALLOC, LOAD, DATA 23 .data 00000018 0000000000271c28 0000000000271c28 00071c28 2**3 CONTENTS, ALLOC, LOAD, DATA 24 .bss 00000008 0000000000271c40 0000000000271c40 00071c40 2**2 ALLOC 25 .comment 000000e1 0000000000000000 0000000000000000 00071c40 2**0 CONTENTS, READONLY SYMBOL TABLE: no symbols How can I edit the makefile to add the soname to the lib? On Mon, Oct 30, 2017 at 11:52 PM, blubee blubeeme wrote: > Seems like the soname issue has to do with the linker flags set during the > compilation process. > > On Mon, Oct 30, 2017 at 7:37 PM, blubee blubeeme > wrote: > >> There's an unmaintained port [graphics/togl] that I need but doing >> stage-qa on my port it says this needed port has no SONAME. >> >> Since the togl is unmaintained I'll like to fix it. This port does a lot >> of stuff like this: >> >> # do-install: >> # @${MKDIR} ${STAGEDIR}${TOGL_INSTDIR} >> # .for i in togl.h togl_ws.h pkgIndex.tcl >> # ${INSTALL_DATA} ${WRKSRC}/${i} ${STAGEDIR}${TOGL_INSTDIR} >> # .endfor >> # ${INSTALL_LIB} ${WRKSRC}/libTogl1.7.so ${STAGEDIR}${TOGL_INSTDIR} >> # ${LN} -s libTogl1.7.so ${STAGEDIR}${TOGL_INSTDIR}/libtogl.so.1 >> # ${LN} -s ${TOGL_INSTDIR}/libTogl1.7.so ${STAGEDIR}${PREFIX}/lib/libt >> ogl.so >> # ${LN} -s ${TOGL_INSTDIR}/libTogl1.7.so ${STAGEDIR}${PREFIX}/lib/libt >> ogl.so.1 >> >> # do-install-DOCS-on: >> # @${MKDIR} ${STAGEDIR}${DOCSDIR} >> # ${INSTALL_DATA} ${WRKSRC}/Togl.html ${STAGEDIR}${DOCSDIR} >> >> # do-install-EXAMPLES-on: >> # @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/Makefile ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/ben.rgb ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/double.c ${WRKSRC}/double.tcl >> ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/gears.c ${WRKSRC}/gears.tcl >> ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/image.c ${WRKSRC}/image.h >> ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/index.c ${WRKSRC}/index.tcl >> ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/overlay.c ${WRKSRC}/overlay.tcl >> ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/stereo.c ${WRKSRC}/stereo.tcl >> ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/texture.c ${WRKSRC}/texture.tcl >> ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/togl.c ${WRKSRC}/togl.h >> ${STAGEDIR}${EXAMPLESDIR} >> # ${INSTALL_DATA} ${WRKSRC}/tree2.rgba ${STAGEDIR}${EXAMPLESDIR} >> >> I think this is the reason it's not registering the SONAME because of >> those commands but I'm not sure. >> >> I ask because reading the porter handbook on installing ports there's a >> Makefile macro ${COPYTREE_SHARE} but there's a warning that using that >> macro doesn't add the files to pkg-plist, you have to manually do that. >> >> Anyways, that's a long way to say how can I rework this project to make >> sure all files are installed and registered properly? >> > >