Opened 11 years ago

Closed 11 years ago

Last modified 10 years ago

#16112 closed defect (fixed)

hfsrsync port fails to build when popt is installed

Reported by: david@… Owned by: ryandesign (Ryan Schmidt)
Priority: Normal Milestone:
Component: ports Version: 1.6.0
Keywords: Cc:
Port:

Description

$ sudo port build hfsrsync Password: ---> Fetching hfsrsync ---> Attempting to fetch rsync-2.5.5.hfs.tgz from http://archive.macosxlabs.org/rsyncx/ ---> Verifying checksum(s) for hfsrsync ---> Extracting hfsrsync ---> Configuring hfsrsync ---> Building hfsrsync with target all Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_hfsrsync/work/rsync-2.5.5.hfs" && make all " returned error 2 Command output: log.c: In function 'log_transfer': log.c:574: warning: unused parameter 'file' /usr/bin/gcc-4.0 -I. -I. -O2 -DHAVE_CONFIG_H -Wall -W -c backup.c -o backup.o /usr/bin/gcc-4.0 -I. -I. -O2 -DHAVE_CONFIG_H -Wall -W -c options.c -o options.o options.c:23:18: error: popt.h: No such file or directory options.c:325: error: array type has incomplete element type options.c:327: error: 'POPT_ARG_NONE' undeclared here (not in a function) options.c:328: error: 'POPT_ARG_STRING' undeclared here (not in a function) options.c:333: error: 'POPT_ARG_INT' undeclared here (not in a function) options.c: In function 'parse_arguments': options.c:482: error: 'poptContext' undeclared (first use in this function) options.c:482: error: (Each undeclared identifier is reported only once options.c:482: error: for each function it appears in.) options.c:482: error: parse error before 'pc' options.c:488: error: 'pc' undeclared (first use in this function) options.c:488: warning: implicit declaration of function 'poptGetContext' options.c:490: warning: implicit declaration of function 'poptGetNextOpt' options.c:516: warning: implicit declaration of function 'poptGetOptArg' options.c:516: warning: passing argument 1 of 'add_exclude' makes pointer from integer without a cast options.c:520: warning: passing argument 1 of 'add_exclude' makes pointer from integer without a cast options.c:524: warning: passing argument 1 of 'add_exclude_file' makes pointer from integer without a cast options.c:528: warning: passing argument 1 of 'add_exclude_file' makes pointer from integer without a cast options.c:651: warning: implicit declaration of function 'poptBadOption' options.c:651: error: 'POPT_BADOPTION_NOALIAS' undeclared (first use in this function) options.c:652: warning: implicit declaration of function 'poptStrerror' options.c:652: warning: format '%s' expects type 'char *', but argument 5 has type 'int' options.c:652: warning: format '%s' expects type 'char *', but argument 6 has type 'int' options.c:673: warning: implicit declaration of function 'poptGetArgs' options.c:673: warning: assignment makes pointer from integer without a cast make: * [options.o] Error 1

Error: Status 1 encountered during processing.

Change History (9)

comment:1 Changed 11 years ago by david@…

Hmmm that formatting is screwed up. Anyway the first error is:

options.c:23:18: error: popt.h: No such file or directory

comment:2 Changed 11 years ago by blb@…

Milestone: Port Bugs

Looks like maybe it needs a dependency on the popt port. Can you try installing popt, then cleaning and rebuilding hfsrsync? Using:

sudo port install popt
sudo port clean --work hfsrsync
sudo port install hfsrsync

If that works, hfsrsync needs to be updated.

comment:3 Changed 11 years ago by david@…

popt is already installed.

I just fixed this by editing the file: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_net_hfsrsync/work/rsync-2.5.5.hfs/options.c

And changing the line #include "popt.h" to #include "popt/popt.h"

comment:4 Changed 11 years ago by david@…

Here are the relevant port versions:

port installed | grep -E 'popt|hfsrsync'
  hfsrsync @2.5.5_1 (active)
  popt @1.13_0 (active)

comment:5 Changed 11 years ago by ryandesign (Ryan Schmidt)

Owner: changed from macports-tickets@… to ryandesign@…
Status: newassigned

I don't get any problem installing hfsrsync @2.5.5_1 when popt is not installed. I do see problem building hfsrsync when popt @1.13_0 is installed.

comment:6 Changed 11 years ago by ryandesign (Ryan Schmidt)

I see a configure option --with-included-popt to let hfsrsync "use bundled popt library, not from system". So it seems that hfsrsync requires popt in any case, but includes a copy it uses if the MacPorts one isn't installed.

Your fix of changing #include "popt.h" to #include "popt/popt.h" means that it will once again use its included popt instead of the MacPorts one, so that would be equivalent to using the --with-included-popt configure option.

I would be rather have hfsrsync use the popt port, so I fixed it to do this in r38704.

Thanks for the report!

comment:7 Changed 11 years ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: assignedclosed

comment:8 Changed 11 years ago by ryandesign (Ryan Schmidt)

Summary: hfsrsync port fails to buildhfsrsync port fails to build when popt is installed

comment:9 Changed 10 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.