[tor-bugs] #23846 [Core Tor/Tor]: Use libtool for building shared library

Tor Bug Tracker & Wiki blackhole at torproject.org
Wed Apr 4 09:54:39 UTC 2018


#23846: Use libtool for building shared library
-------------------------------------------------+-------------------------
 Reporter:  hellais                              |          Owner:  sbs
     Type:  enhancement                          |         Status:
                                                 |  needs_review
 Priority:  Medium                               |      Milestone:  Tor:
                                                 |  0.3.4.x-final
Component:  Core Tor/Tor                         |        Version:
 Severity:  Normal                               |     Resolution:
 Keywords:  tor-mobile, s8-api,                  |  Actual Points:
  034-triage-20180328 034-included-20180402      |
Parent ID:  #23684                               |         Points:
 Reviewer:  nickm                                |        Sponsor:
                                                 |  Sponsor8
-------------------------------------------------+-------------------------

Comment (by sbs):

 Addressing more comments from catalyst:

 > Do we know how this will affect Windows builds? The .$(OBJEXT) vs .lo
 change makes me nervous.

 What build system is used to build Tor on Windows? I see that there is a
 `Makefile.nmake` and a `Makefile.am` and the documentation mentions mingw
 (but mainly below `contrib`).

 Probably both `Makefile.am` and `Makefile.nmake` are used, then:

 If tor is built using MS tooling and `Makefile.nmake`, then this change
 has no impact.

 Otherwise, to better understand, I tried to build `libevent` (which uses
 `libtool`) on Windows using `MSYS2` and `mingw-w64` and found that it
 produced `.lo` files. I also searched online and it seems the
 documentation of `automake`, when specifically talking about files
 produced with and without libtool, does not mention any special variable
 for the extension of libtool-produced files; rather it uses `file.lo`,
 while it specifically mentions `file.$(OBJEXT)` [1] [2].

 [1] https://www.gnu.org/software/automake/manual/html_node/Objects-
 created-both-with-libtool-and-without.html

 [2] https://www.gnu.org/software/automake/manual/html_node/Program-and-
 Library-Variables.html

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/23846#comment:17>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list