[MacPorts] #44286: fixes for eggdrop port on mavericks

MacPorts noreply at macports.org
Wed Jul 9 00:06:27 PDT 2014


#44286: fixes for eggdrop port on mavericks
--------------------+--------------------------------
 Reporter:  dre@…   |      Owner:  macports-tickets@…
     Type:  defect  |     Status:  new
 Priority:  Normal  |  Milestone:
Component:  ports   |    Version:  2.3.1
 Keywords:          |       Port:
--------------------+--------------------------------
 Symptom:

 {{{
 ...
 gcc -o ../eggdrop bg.o botcmd.o botmsg.o botnet.o chanprog.o cmds.o dcc.o
 dccutil.o dns.o flags.o language.o match.o main.o mem.o misc.o misc_file.o
 modules.o net.o rfc1459.o tcl.o tcldcc.o tclhash.o tclmisc.o tcluser.o
 userent.o userrec.o users.o  -L/usr/lib -ltcl8.5 -lm -ldl  -lpthread
 md5/md5c.o compat/*.o `cat mod/mod.xlibs`
 Undefined symbols for architecture x86_64:
   "_cron_matchfld", referenced from:
       _cron_match in match.o
   "_garbage_collect_tclhash", referenced from:
       _mainloop in main.o
   "_open_listen", referenced from:
       _global_table in modules.o
       _tcl_listen in tcldcc.o
 ld: symbol(s) not found for architecture x86_64
 clang: error: linker command failed with exit code 1 (use -v to see
 invocation)
 make[1]: *** [../eggdrop] Error 1
 make: *** [modegg] Error 2
 }}}

 One possible solution involves a tweak to the port file and three new
 patch files. All patches and new files are attached and also shown below.

 # Add some new patches for mavericks+
 {{{
 --- Portfile    2014-07-09 00:00:01.000000000 -0700
 +++ Portfile.patched    2014-07-08 23:59:37.000000000 -0700
 @@ -40,3 +40,9 @@
  if {${os.platform} eq "darwin" && ${os.major} >= 10} {
      patchfiles-append patch-Makefile.in.diff
  }
 +
 +if {${os.platform} eq "darwin" && ${os.major} >= 13} {
 +    patchfiles-append tclhash.h.diff
 +    patchfiles-append proto.h.diff
 +    patchfiles-append match.c.diff
 +}
 }}}

 # the new patches are as follows.

 # files/tclhash.h.diff
 {{{
 --- src/tclhash.h       2011-07-31 13:15:06.000000000 -0700
 +++ src/tclhash.h.patched       2014-07-08 23:45:52.000000000 -0700
 @@ -75,7 +75,7 @@

  #ifndef MAKING_MODS

 -inline void garbage_collect_tclhash(void);
 +void garbage_collect_tclhash(void);

  void init_bind(void);
  void kill_bind(void);
 }}}

 # files/proto.h.diff
 {{{
 --- src/proto.h 2011-07-09 08:07:48.000000000 -0700
 +++ src/proto.h.patched 2014-07-08 23:46:09.000000000 -0700
 @@ -271,7 +271,7 @@
  void killsock(int);
  void killtclsock(int);
  int answer(int, char *, unsigned long *, unsigned short *, int);
 -inline int open_listen(int *);
 +int open_listen(int *);
  int open_address_listen(IP addr, int *);
  int open_telnet(char *, int);
  int open_telnet_dcc(int, char *, char *);
 }}}

 # files/match.c.diff
 {{{
 --- src/match.c 2010-07-01 09:10:49.000000000 -0700
 +++ src/match.c.patched 2014-07-08 23:46:27.000000000 -0700
 @@ -367,7 +367,7 @@
  /* Inline for cron_match (obviously).
   * Matches a single field of a crontab expression.
   */
 -inline int cron_matchfld(char *mask, int match)
 +int cron_matchfld(char *mask, int match)
  {
    int skip = 0, f, t;
    char *p, *q;
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/44286>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list