Hello,

Just wanted let you know that I really enjoy using lftp. I have searched on the web for ways to build lftp from source on Mac OS X, but haven't come up with any success.

I have created my own Makefile and bypassed autoconf/automake and have successfully built lftp on mac os 10.3.4. My makefile is attached, and should be placed in the src/ directory. It is not the cleanest solution, and some features are missing, but I hope that you can use this in future releases for compatibility with Mac OS X.

Thanks,
Jason

OBJECTS=ftp-opie.o \
        getdate.o \
        lftp_pty.o \
        lftp_rl.o \
        md5.o \
        plural.o \
        ArgV.o \
        CatJob.o \
        CharReader.o \
        ChmodJob.o \
        CmdExec.o \
        ColumnOutput.o \
        ConnectionSlot.o \
        CopyJob.o \
        DirColors.o \
        DummyProto.o \
        FileAccess.o \
        FileCopy.o \
        FileCopyFtp.o \
        FileFeeder.o \
        FileGlob.o \
        FileSet.o \
        FileSetOutput.o \
        Filter.o \
        FindJob.o \
        FindJobDu.o \
        Fish.o \
        FtpDirList.o \
        FtpListInfo.o \
        GetFileInfo.o \
        GetJob.o \
        GetPass.o \
        Http.o \
        HttpDir.o \
        IdNameCache.o \
        Job.o \
        LocalAccess.o \
        LocalDir.o \
        LsCache.o \
        MirrorJob.o \
        NetAccess.o \
        OutputJob.o \
        PatternSet.o \
        PollVec.o \
        ProcWait.o \
        PtyShell.o \
        QueueFeeder.o \
        ResMgr.o \
        Resolver.o \
        SFtp.o \
        SMTask.o \
        SignalHook.o \
        SleepJob.o \
        Speedometer.o \
        StatusLine.o \
        StringPool.o \
        StringSet.o \
        SysCmdJob.o \
        TimeDate.o \
        Timer.o \
        TreatFileJob.o \
        alias.o \
        bookmark.o \
        buffer.o \
        buffer_ssl.o \
        complete.o \
        echoJob.o \
        fg.o \
        ftpclass.o \
        history.o \
        keyvalue.o \
        lftp.o \
        lftp_ssl.o \
        lftp_tinfo.o \
        log.o \
        mgetJob.o \
        misc.o \
        mkdirJob.o \
        module.o \
        mvJob.o \
        netrc.o \
        parsecmd.o \
        pgetJob.o \
        resource.o \
        rmJob.o \
        url.o \
        xmalloc.o \
        commands.o \

cmd_mirror_la_OBJECTS = MirrorJob.o
cmd_sleep_la_OBJECTS = SleepJob.o
liblftp_jobs_la_OBJECTS = Job.o CmdExec.o commands.o mgetJob.o \
        SysCmdJob.o rmJob.o parsecmd.o mvJob.o alias.o \
        bookmark.o CatJob.o GetJob.o mkdirJob.o pgetJob.o \
        FileFeeder.o QueueFeeder.o keyvalue.o history.o FindJob.o \
        FindJobDu.o ChmodJob.o TreatFileJob.o CopyJob.o echoJob.o \
        OutputJob.o
liblftp_network_la_OBJECTS = NetAccess.o Resolver.o lftp_ssl.o \
        buffer_ssl.o
liblftp_pty_la_OBJECTS = PtyShell.o lftp_pty.o
liblftp_tasks_la_OBJECTS = PollVec.o SMTask.o ProcWait.o \
        GetPass.o ConnectionSlot.o CharReader.o LsCache.o \
        FileAccess.o ResMgr.o Filter.o SignalHook.o FileCopy.o \
        xmalloc.o FileSet.o log.o StringSet.o buffer.o url.o \
        StatusLine.o plural.o misc.o fg.o module.o resource.o \
        DummyProto.o ArgV.o Speedometer.o FileGlob.o netrc.o \
        ColumnOutput.o FileSetOutput.o lftp_tinfo.o TimeDate.o \
        Timer.o GetFileInfo.o StringPool.o DirColors.o \
        IdNameCache.o PatternSet.o LocalDir.o
proto_file_la_OBJECTS = LocalAccess.o
proto_fish_la_OBJECTS = Fish.o
proto_ftp_la_OBJECTS = ftpclass.o FtpListInfo.o FtpDirList.o \
        md5.o ftp-opie.o FileCopyFtp.o
proto_http_la_OBJECTS = Http.o HttpDir.o
proto_sftp_la_OBJECTS = SFtp.o
lftp_OBJECTS = lftp.o complete.o lftp_rl.o getdate.o NetAccess.o PtyShell.o

LIBS= cmd-mirror.a \
      cmd-sleep.a \
      liblftp-jobs.a \
      liblftp-network.a \
      liblftp-pty.a \
      liblftp-tasks.a \
      proto-file.a \
      proto-fish.a \
      proto-ftp.a \
      proto-http.a \
      proto-sftp.a \



lftp : $(LIBS) $(lftp_OBJECTS)
        make -C ../lib
        make -C ../readline-4.3
        gcc -flat_namespace -undefined suppress -o $@ $(lftp_OBJECTS) $(LIBS) 
../readline-4.3/libreadline.a ../readline-4.3/libhistory.a ../lib/liblib.a -liconv 
-lcurses -lresolv -lsupc++

.c.o :
        gcc -Wno-long-double -DMODULE_CMD_MIRROR -DMODULE_CMD_SLEEP -DHAVE_CONFIG_H 
-I../include -c -o $@ $<

.cc.o :
        g++ -Wno-long-double -DMODULE_CMD_MIRROR -DMODULE_CMD_SLEEP -DHAVE_CONFIG_H 
-I../include -c -o $@ $<


clean :
        @rm -f $(OBJECTS) $(LIBS)

cmd-mirror.a: $(cmd_mirror_la_OBJECTS)
        ar -rc $@ $(cmd_mirror_la_OBJECTS)
        ranlib $@

cmd-sleep.a: $(cmd_sleep_la_OBJECTS)
        ar -rc $@ $(cmd_sleep_la_OBJECTS)
        ranlib $@

liblftp-jobs.a: $(liblftp_jobs_la_OBJECTS)
        ar -rc $@ $(liblftp_jobs_la_OBJECTS)
        ranlib $@

liblftp-network.a: $(liblftp_network_la_OBJECTS)
        ar -rc $@ $(liblftp_network_la_OBJECTS)
        ranlib $@

liblftp-pty.a: $(liblftp_pty_la_OBJECTS)
        ar -rc $@ $(liblftp_pty_la_OBJECTS)
        ranlib $@

liblftp-tasks.a: $(liblftp_tasks_la_OBJECTS)
        ar -rc $@ $(liblftp_tasks_la_OBJECTS)
        ranlib $@

proto-file.a: $(proto_file_la_OBJECTS)
        ar -rc $@ $(proto_file_la_OBJECTS)
        ranlib $@

proto-fish.a: $(proto_fish_la_OBJECTS)
        ar -rc $@ $(proto_fish_la_OBJECTS)
        ranlib $@

proto-ftp.a: $(proto_ftp_la_OBJECTS)
        ar -rc $@ $(proto_ftp_la_OBJECTS)
        ranlib $@

proto-http.a: $(proto_http_la_OBJECTS)
        ar -rc $@ $(proto_http_la_OBJECTS)
        ranlib $@

proto-sftp.a: $(proto_sftp_la_OBJECTS)
        ar -rc $@ $(proto_sftp_la_OBJECTS)
        ranlib $@

Reply via email to