Changeset 2848


Ignore:
Timestamp:
Jul 6, 2011, 2:06:34 AM (8 years ago)
Author:
bruno
Message:
  • Really support both mkisofs and genisoimage everywhere
Location:
branches/2.2.9
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2.9/mondo-doc/mondorescue-howto.sgml

    r2714 r2848  
    938938page</ulink> for details.</para>
    939939<para>Mondo requires afio, bzip2, cdrtools/cdrecord/growisofs (may be part of the dvd+rw-tools package), ncurses, newt,
    940 isolinux/syslinux, lzo (optional), lzop (optional), mkisofs, slang,
     940        isolinux/syslinux, lzo (optional), lzop (optional), mkisofs/genisoimage, slang,
    941941and a few other packages.</para>
    942942<para>Good Linux distributions provide all these packages. If yours
  • branches/2.2.9/mondo/src/common/libmondo-archive.c

    r2847 r2848  
    16801680    char *tmp2;
    16811681    char *tmp3;
     1682    char *isofs_cmd = NULL;
     1683    char *full_isofs_cmd = NULL;
    16821684    char *mds = NULL;
    16831685    bool cd_is_mountable;
     
    18411843        mr_asprintf(&result_sz, "Call to mkisofs to make ISO (%s #%d) ", mds,  g_current_media_number);
    18421844        mr_free(mds);
     1845        if (find_home_of_exe("genisoimage")) {
     1846            mr_asprintf(&isofs_cmd, "%s", MONDO_GENISOIMAGE_CMD);
     1847        } else {
     1848            mr_asprintf(&isofs_cmd, "%s", MONDO_MKISOFS_CMD);
     1849        }
    18431850        if (bkpinfo->nonbootable_backup) {
    18441851            log_msg(1, "Making nonbootable backup");
    1845             res = eval_call_to_make_ISO(MONDO_MKISOFS"-o '_ISO_' -V _CD#_ .",
     1852            mr_asprintf(&full_isofs_cmd, "%s%s-o '_ISO_' -V _CD#_ .",isofs_cmd,MONDO_MKISOFS);
     1853            res = eval_call_to_make_ISO(full_isofs_cmd,
    18461854                                      destfile, g_current_media_number,
    18471855                                      MONDO_LOGFILE, message_to_screen);
     1856            mr_free(full_isofs_cmd);
    18481857        } else {
    18491858            log_msg(1, "Making bootable backup");
     
    18601869#ifdef __IA64__
    18611870                log_msg(1, "IA64 --> elilo");
    1862                 res = eval_call_to_make_ISO(MONDO_MKISOFS_REGULAR_ELILO"-o '_ISO_' -V _CD#_ .",
     1871                mr_asprintf(&full_isofs_cmd, "%s%s-o '_ISO_' -V _CD#_ .",isofs_cmd,MONDO_MKISOFS_REGULAR_ELILO);
     1872                res = eval_call_to_make_ISO(full_isofs_cmd,
    18631873                                            destfile,
    18641874                                            g_current_media_number,
    18651875                                            MONDO_LOGFILE,
    18661876                                            message_to_screen);
     1877                mr_free(full_isofs_cmd);
    18671878#else
    18681879                log_msg(1, "Non-ia64 --> lilo");
     1880                mr_asprintf(&full_isofs_cmd, "%s%s-b images/mindi-bootroot.2880.img -c boot.cat -o '_ISO_' -J -V _CD#_ .",isofs_cmd,MONDO_MKISOFS);
    18691881                res =
    18701882                    // FIXME: fixed boot size probably wrong. lilo to be removed
    1871                     eval_call_to_make_ISO(MONDO_MKISOFS"-b images/mindi-bootroot.2880.img -c boot.cat -o '_ISO_' -J -V _CD#_ .",
     1883                    eval_call_to_make_ISO(full_isofs_cmd,
    18721884                                          destfile, g_current_media_number,
    18731885                                          MONDO_LOGFILE,
    18741886                                          message_to_screen);
     1887                mr_free(full_isofs_cmd);
    18751888#endif
    18761889            } else {
    18771890                log_msg(1, "make_cd_use_lilo = FALSE");
    18781891                log_msg(1, "Isolinux");
     1892                mr_asprintf(&full_isofs_cmd, "%s%s-o '_ISO_' -V _CD#_ .",isofs_cmd,MONDO_MKISOFS_REGULAR_SYSLINUX);
    18791893                res =
    1880                     eval_call_to_make_ISO(MONDO_MKISOFS_REGULAR_SYSLINUX"-o '_ISO_' -V _CD#_ .",
     1894                    eval_call_to_make_ISO(full_isofs_cmd,
    18811895                                          destfile, g_current_media_number,
    18821896                                          MONDO_LOGFILE,
    18831897                                          message_to_screen);
     1898                mr_free(full_isofs_cmd);
    18841899            }
    18851900        }
     1901        mr_free(isofs_cmd);
    18861902        paranoid_free(message_to_screen);
    18871903
  • branches/2.2.9/mondo/src/common/libmondo-tools.c

    r2847 r2848  
    331331#endif
    332332}
    333 
    334333
    335334/**
     
    371370    char *mtpt;
    372371    char *hostname;
     372    char *isofs_cmd = NULL;
    373373    char *ip_address = NULL;
    374374    int retval = 0;
     
    508508            fatal_error("Please install either cdrecord or dvdrecord.");
    509509        }
     510        if (find_home_of_exe("genisoimage")) {
     511            mr_asprintf(&isofs_cmd, "%s", MONDO_GENISOIMAGE_CMD);
     512        } else {
     513            mr_asprintf(&isofs_cmd, "%s", MONDO_MKISOFS_CMD);
     514        }
    510515        if (bkpinfo->nonbootable_backup) {
    511             mr_asprintf(&mondo_mkisofs_sz, MONDO_MKISOFS);
     516            mr_asprintf(&mondo_mkisofs_sz, "%s%s", isofs_cmd, MONDO_MKISOFS);
    512517        } else if
    513518#ifdef __FreeBSD__
     
    518523#ifdef __IA64__
    519524    {
    520         mr_asprintf(&mondo_mkisofs_sz, "%s -V _CD#_", MONDO_MKISOFS_REGULAR_ELILO);
     525        mr_asprintf(&mondo_mkisofs_sz, "%s%s -V _CD#_", isofs_cmd, MONDO_MKISOFS_REGULAR_ELILO);
    521526    }
    522527#else
    523528    {
    524         mr_asprintf(&mondo_mkisofs_sz, "%s -V _CD#_", MONDO_MKISOFS_REGULAR_LILO);
     529        mr_asprintf(&mondo_mkisofs_sz, "%s%s -V _CD#_", isofs_cmd, MONDO_MKISOFS_REGULAR_LILO);
    525530    }
    526531#endif
    527532        else
    528533        {
    529             mr_asprintf(&mondo_mkisofs_sz, "%s -V _CD#_", MONDO_MKISOFS_REGULAR_SYSLINUX);
    530         }
     534            mr_asprintf(&mondo_mkisofs_sz, "%s%s -V _CD#_", isofs_cmd, MONDO_MKISOFS_REGULAR_SYSLINUX);
     535        }
     536        mr_free(isofs_cmd);
     537
    531538        if (bkpinfo->manual_cd_tray) {
    532539            if (bkpinfo->call_before_iso[0] == '\0') {
  • branches/2.2.9/mondo/src/include/my-stuff.h

    r2679 r2848  
    169169
    170170
    171 #define MONDO_MKISOFS "mkisofs -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL_Version "
     171#define MONDO_MKISOFS_CMD "mkisofs"
     172#define MONDO_GENISOIMAGE_CMD "genisoimage"
     173#define MONDO_MKISOFS " -r -p MondoRescue -publisher www.mondorescue.org -A Mondo_Rescue_GPL_Version "
    172174
    173175/**
Note: See TracChangeset for help on using the changeset viewer.