Opened 19 years ago

Closed 18 years ago

Last modified 8 years ago

#3845 closed defect (fixed)

BUG: cannot build boxbackup

Reported by: miyasita@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.0
Keywords: Cc: ecronin (Eric Cronin), markd@…, rajiv@…
Port: boxbackup

Description (last modified by ryandesign (Ryan Carsten Schmidt))

I cannot build boxbackup-0.09 in dports/sysutil/boxbackup.

When I got some error messages, I re-fetched dports tree and updated it but I could not avoid errors. The messages I got are follows:

% port build boxbackup
--->  Fetching boxbackup
--->  Verifying checksum(s) for boxbackup
--->  Extracting boxbackup
--->  Applying patches to boxbackup
--->  Configuring boxbackup
--->  Building boxbackup with target all
Error: Target com.apple.build returned: shell command "cd "/opt/local/var/db/dports/build/file._Users_miyasita_Sources_DarwinPorts_darwinports_dports_sysutils_boxbackup/work/boxbackup-0.09" && make all" returned error 2
Command output: g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c CipherBlowfish.cpp -o ../../release/lib/crypto/CipherBlowfish.o
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c CipherContext.cpp -o ../../release/lib/crypto/CipherContext.o
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c CipherDescription.cpp -o ../../release/lib/crypto/CipherDescription.o
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c MD5Digest.cpp -o ../../release/lib/crypto/MD5Digest.o
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c Random.cpp -o ../../release/lib/crypto/Random.o
Random.cpp: In function `std::string Random::GenerateHex(int)':
Random.cpp:111: warning: comparison between signed and unsigned integer expressions
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c RollingChecksum.cpp -o ../../release/lib/crypto/RollingChecksum.o
(echo -n > ../../release/lib/crypto/crypto.a; rm ../../release/lib/crypto/crypto.a)
ar -q ../../release/lib/crypto/crypto.a ../../release/lib/crypto/autogen_CipherException.o ../../release/lib/crypto/CipherAES.o ../../release/lib/crypto/CipherBlowfish.o ../../release/lib/crypto/CipherContext.o ../../release/lib/crypto/CipherDescription.o ../../release/lib/crypto/MD5Digest.o ../../release/lib/crypto/Random.o ../../release/lib/crypto/RollingChecksum.o
ar: creating archive ../../release/lib/crypto/crypto.a
ranlib ../../release/lib/crypto/crypto.a
(cd ../../lib/server; bsdmake -D RELEASE -D NODEPS)
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c autogen_ConnectionException.cpp -o ../../release/lib/server/
autogen_ConnectionException.o
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c autogen_ServerException.cpp -o ../../release/lib/server/
autogen_ServerException.o
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c Daemon.cpp -o ../../release/lib/server/Daemon.o
g++ -DNDEBUG -O2 -Wall -I../../lib/common -DPLATFORM_DARWIN -DBOX_VERSION="\"0.09\"" -I/opt/local/include  -c LocalProcessStream.cpp -o ../../release/lib/server/LocalProcessStream.o
/usr/include/sys/socket.h:99: error: conflicting declaration 'typedef __darwin_socklen_t socklen_t'
../../lib/common/BoxPlatform.h:120: error: 'socklen_t' has a previous declaration as 'typedef int socklen_t'
/usr/include/sys/socket.h:99: error: declaration of 'typedef __darwin_socklen_t socklen_t'
../../lib/common/BoxPlatform.h:120: error: conflicts with previous declaration 'typedef int socklen_t'
/usr/include/sys/socket.h:99: error: declaration of 'typedef __darwin_socklen_t socklen_t'
../../lib/common/BoxPlatform.h:120: error: conflicts with previous declaration 'typedef int socklen_t'
*** Error code 1

Stop in /opt/local/var/db/dports/build/file._Users_miyasita_Sources_DarwinPorts_darwinports_dports_sysutils_boxbackup/work/boxbackup-0.09/lib/server.
*** Error code 1

Stop.
make: *** [parcels/boxbackup-0.09-backup-client-Darwin.tgz] Error 1

Change History (14)

comment:1 Changed 19 years ago by mww@…

Summary: I cannot build boxbackupBUG: cannot build boxbackup

comment:2 Changed 18 years ago by ecronin (Eric Cronin)

Cc: ecronin@… added

Patch below.

  • fixes includes for Tiger
  • fixes #define #pragma error

Tested on Panther and Tiger

--- lib/common/BoxPlatform.h.orig       2004-12-06 07:58:46.000000000 -0500
+++ lib/common/BoxPlatform.h    2006-02-02 00:27:49.000000000 -0500
@@ -115,14 +115,8 @@
 #ifdef PLATFORM_DARWIN
 
        #include <sys/types.h>
-
-       // types 'missing'
-       typedef int socklen_t;
-       typedef u_int8_t uint8_t;
-       typedef signed char int8_t;
-       typedef u_int64_t uint64_t;
-       typedef u_int32_t uint32_t;
-       typedef u_int16_t uint16_t;
+       #include <sys/socket.h>
+       #include <stdint.h>
 
        // poll() emulator on Darwin misses this declaration
        #define INFTIM          -1
@@ -248,6 +242,8 @@
 
        #else
 
+               #define STRUCTURE_PATCKING_FOR_WIRE_USE_HEADERS
+
                // Force STL to use malloc() for memory allocation
                // -- slower, but doesn't gradually use more and more memory
                // HOWEVER -- this 'fix' is broken on some platforms. Lots of fun!
Last edited 8 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:3 Changed 18 years ago by rajiv@…

see also bug #7434 for an update to boxbackup which supports darwin and os x.

comment:4 Changed 18 years ago by rajiv@…

Cc: rajiv@… added

comment:5 Changed 18 years ago by markd@…

Cc: markd@… added

Does anyone want to be a maintainer for boxbackup? It needs to be updated to 0.10 but I don't know 1) what port changes are needed to for that, if any (file locations changes, file additions, or anything interesting like that). Or 2) if the 0.10 negates the need for these patches. Since I don't use the program I really can't test it. Or if no one wants to be a maintainer, at least can someone that uses it answer questions 1 and 2 so one of us can do it?

comment:6 Changed 18 years ago by markd@…

I just version bumped boxbackup to 0.10 since it has no maintainer and since it is broken anyway. The patches listed here do not seem to be necessary for .10 and it builds and destroots fine now without patches. But it needs testing! And it really needs a maintainer so anyone willing please say so.

comment:7 Changed 18 years ago by markd@…

* Bug 7434 has been marked as a duplicate of this bug. *

comment:8 Changed 18 years ago by ecronin (Eric Cronin)

The patches are no longer needed with 0.10. Building works fine treating it as a normal ./configure-based port now, although the +server variant was causing me troubles making a working portfile. If this port can be massaged into a working condition I can maintain it from here out since I'm actively using it and can test. I will also look at it in a few weeks if its still unfixed since I need to learn more of the dports internals to continue with my attempt at updating it...

comment:9 Changed 18 years ago by markd@…

(In reply to comment #6)

If this port can be massaged into a

working condition I can maintain it from here out since I'm actively using it and can test.

That's be great. I see I was wrong that the .10 port was destrooting properly. It isn't. I wonder if it ever did. Anyway I'll look at it later and see if I can see what the problem is.

comment:10 Changed 18 years ago by markd@…

Well it's destrooting correctly now so I'm satisfied with it. I think the old port must never have destrooted right. The app doesn't support the DESTDIR variable so it is a pain in the neck. So test it and let me know of any problems, and if/when you want to be listed as maintainer of the port. It will take at least a day for rsync to catch up to CVS so wait a little while and do a selfupdate to make sure you have the fixed one.

comment:11 Changed 18 years ago by markd@…

Resolution: fixed
Status: newclosed

comment:12 Changed 18 years ago by ecronin (Eric Cronin)

The updated portfile looks good for installing the client and +server variants. There's a small patch below which prevents it from looking in /opt/local/opt/local/etc/box/ for the config files.

--- Portfile.orig       2006-03-23 20:30:22.000000000 -0500
+++ Portfile    2006-03-23 20:35:21.000000000 -0500
@@ -4,7 +4,7 @@
 name                   boxbackup
 version                        0.10
 categories             sysutils net
-maintainers            darwinports@opendarwin.org
+maintainers            ecronin@gizmolabs.org
 description            completely automatic on-line backup system for UNIX.
 long_description       The backup daemon, bbackupd, runs on all machines to \
                                        be backed up. The store server daemon, bbstored runs \
@@ -31,7 +31,6 @@
        reinplace "s|@bindir_expanded@|${prefix}/bin|g" ${worksrcpath}/infrastructure/BoxPlatform.pm.in
        reinplace "s|__PREFIX__|${prefix}|g" ${worksrcpath}/infrastructure/BoxPlatform.pm.in
        reinplace "s|\$install_into_dir|${destroot}\$install_into_dir|g" ${worksrcpath}/infrastructure/makeparcels.pl
-       reinplace "s|/etc/box/|${prefix}/etc/box/|g" ${worksrcpath}/lib/common/BoxPortsAndFiles.h
 
        cd ${worksrcpath}
        foreach file [exec find . -type f ( -name *.pl -o -name *-config -o -name *-certs -o -name *.cpp )] {
Last edited 8 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:13 Changed 18 years ago by markd@…

Committed the changes. Thanks! Say have you tried boxi? Curious to know if it works well. If so it'd make a nice variant to boxbackup.

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

Description: modified (diff)
Port: boxbackup added
Note: See TracTickets for help on using tickets.