From 60137211233861884b4d035b9bdd5e3c06682fba Mon Sep 17 00:00:00 2001 From: Rene Engelhard Date: Tue, 20 Apr 2010 01:10:11 +0200 Subject: kfreebsdport01: make epms deb.c create correct kfreebsd-{i386,amd64}.deb packages --- epm/epm-3.7.patch | 1454 ++++++++++++++++++++++++----------------------------- 1 file changed, 650 insertions(+), 804 deletions(-) (limited to 'epm') diff --git a/epm/epm-3.7.patch b/epm/epm-3.7.patch index 116aa28f6690..02835bc3e5ce 100644 --- a/epm/epm-3.7.patch +++ b/epm/epm-3.7.patch @@ -1,811 +1,657 @@ -*** misc/epm-3.7/bsd.c Tue Jan 14 18:05:01 2003 ---- misc/build/epm-3.7/bsd.c Mon Nov 20 14:54:51 2006 -*************** -*** 26,31 **** ---- 26,38 ---- - - #include "epm.h" - -+ void cr2semicolon(char *command) -+ { -+ int len, i; -+ len=strlen(command); -+ for (i=0;inum_depends, d = dist->depends; i > 0; i --, d ++) + { ++#ifdef __FreeBSD__ ++ if (d->type == DEPEND_REQUIRES) { ++ if (dist->relnumber) ++ fprintf(fp, "@pkgdep %s-%s-%d-%s", d->product, dist->version, dist->relnumber, platname); ++ else ++ fprintf(fp, "@pkgdep %s-%s-%s", d->product, dist->version, platname); ++ } ++#else + if (d->type == DEPEND_REQUIRES) + fprintf(fp, "@pkgdep %s", d->product); ++#endif + else + #ifdef __FreeBSD__ + /* +@@ -179,9 +195,11 @@ + " by the BSD packager.\n", stderr); + break; + case COMMAND_POST_INSTALL : ++ cr2semicolon(c->command); + fprintf(fp, "@exec %s\n", c->command); + break; + case COMMAND_PRE_REMOVE : ++ cr2semicolon(c->command); + fprintf(fp, "@unexec %s\n", c->command); + break; + case COMMAND_POST_REMOVE : +@@ -199,7 +217,7 @@ + */ + + fprintf(fp, "@exec /bin/mkdir -p %s\n", file->dst); +- fprintf(fp, "@exec /bin/chown %s:%s %s\n", file->user, file->group, ++ fprintf(fp, "@exec /usr/sbin/chown %s:%s %s\n", file->user, file->group, + file->dst); + fprintf(fp, "@exec /bin/chmod %04o %s\n", file->mode, file->dst); + } +@@ -326,12 +344,13 @@ + if (Verbosity) + puts("Building FreeBSD pkg binary distribution..."); + +- if (run_command(NULL, "pkg_create -p / -s %s -c %s -d %s -f %s %s", ++ if (run_command(NULL, "/usr/sbin/pkg_create -p / -s %s -c %s -d %s -f %s %s", + current, commentname, descrname, plistname, name)) + return (1); + +- if (run_command(NULL, "mv %s.tgz %s", name, directory)) +- return (1); ++ if (run_command(NULL, "mv %s.tbz %s", name, directory)) ++ if (run_command(NULL, "mv %s.tgz %s", name, directory)) ++ return (1); + /* - * 'make_bsd()' - Make a FreeBSD software distribution package. -*************** -*** 149,156 **** ---- 156,172 ---- - - for (i = dist->num_depends, d = dist->depends; i > 0; i --, d ++) - { -+ #ifdef __FreeBSD__ -+ if (d->type == DEPEND_REQUIRES) { -+ if (dist->relnumber) -+ fprintf(fp, "@pkgdep %s-%s-%d-%s", d->product, dist->version, dist->relnumber, platname); -+ else -+ fprintf(fp, "@pkgdep %s-%s-%s", d->product, dist->version, platname); -+ } -+ #else - if (d->type == DEPEND_REQUIRES) - fprintf(fp, "@pkgdep %s", d->product); -+ #endif - else - #ifdef __FreeBSD__ - /* -*************** -*** 179,187 **** ---- 195,205 ---- - " by the BSD packager.\n", stderr); - break; - case COMMAND_POST_INSTALL : -+ cr2semicolon(c->command); - fprintf(fp, "@exec %s\n", c->command); - break; - case COMMAND_PRE_REMOVE : -+ cr2semicolon(c->command); - fprintf(fp, "@unexec %s\n", c->command); - break; - case COMMAND_POST_REMOVE : -*************** -*** 199,205 **** - */ - - fprintf(fp, "@exec /bin/mkdir -p %s\n", file->dst); -! fprintf(fp, "@exec /bin/chown %s:%s %s\n", file->user, file->group, - file->dst); - fprintf(fp, "@exec /bin/chmod %04o %s\n", file->mode, file->dst); - } ---- 217,223 ---- - */ - - fprintf(fp, "@exec /bin/mkdir -p %s\n", file->dst); -! fprintf(fp, "@exec /usr/sbin/chown %s:%s %s\n", file->user, file->group, - file->dst); - fprintf(fp, "@exec /bin/chmod %04o %s\n", file->mode, file->dst); - } -*************** -*** 326,337 **** - if (Verbosity) - puts("Building FreeBSD pkg binary distribution..."); - -! if (run_command(NULL, "pkg_create -p / -s %s -c %s -d %s -f %s %s", - current, commentname, descrname, plistname, name)) - return (1); - -! if (run_command(NULL, "mv %s.tgz %s", name, directory)) -! return (1); - - /* - * Remove temporary files... ---- 344,356 ---- - if (Verbosity) - puts("Building FreeBSD pkg binary distribution..."); - -! if (run_command(NULL, "/usr/sbin/pkg_create -p / -s %s -c %s -d %s -f %s %s", - current, commentname, descrname, plistname, name)) - return (1); - -! if (run_command(NULL, "mv %s.tbz %s", name, directory)) -! if (run_command(NULL, "mv %s.tgz %s", name, directory)) -! return (1); - - /* - * Remove temporary files... -*** misc/epm-3.7/configure Thu Jul 24 03:20:54 2003 ---- misc/build/epm-3.7/configure Mon Nov 20 15:01:11 2006 -*************** -*** 1238,1244 **** ---- 1238,1249 ---- - fi - fi; - -+ # Check whether --enable-fltk or --disable-fltk was given. -+ if test "${enable_fltk+set}" = set; then -+ enableval="$enable_fltk" -+ fi; - -+ - # Check whether --with-docdir or --without-docdir was given. - if test "${with_docdir+set}" = set; then - withval="$with_docdir" -*************** -*** 4904,4939 **** - fi - - -! # Extract the first word of "fltk-config", so it can be a program name with args. -! set dummy fltk-config; ac_word=$2 -! echo "$as_me:$LINENO: checking for $ac_word" >&5 -! echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -! if test "${ac_cv_path_FLTKCONFIG+set}" = set; then -! echo $ECHO_N "(cached) $ECHO_C" >&6 -! else -! case $FLTKCONFIG in -! [\\/]* | ?:[\\/]*) -! ac_cv_path_FLTKCONFIG="$FLTKCONFIG" # Let the user override the test with a path. -! ;; -! *) -! as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -! for as_dir in $PATH -! do -! IFS=$as_save_IFS -! test -z "$as_dir" && as_dir=. -! for ac_exec_ext in '' $ac_executable_extensions; do -! if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -! ac_cv_path_FLTKCONFIG="$as_dir/$ac_word$ac_exec_ext" -! echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -! break 2 - fi -! done -! done -! -! ;; -! esac - fi -- FLTKCONFIG=$ac_cv_path_FLTKCONFIG - - if test -n "$FLTKCONFIG"; then - echo "$as_me:$LINENO: result: $FLTKCONFIG" >&5 ---- 4909,4946 ---- - fi - - -! if eval "test x$enable_fltk = xyes"; then -! # Extract the first word of "fltk-config", so it can be a program name with args. -! set dummy fltk-config; ac_word=$2 -! echo "$as_me:$LINENO: checking for $ac_word" >&5 -! echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -! if test "${ac_cv_path_FLTKCONFIG+set}" = set; then -! echo $ECHO_N "(cached) $ECHO_C" >&6 -! else -! case $FLTKCONFIG in -! [\\/]* | ?:[\\/]*) -! ac_cv_path_FLTKCONFIG="$FLTKCONFIG" # Let the user override the test with a path. -! ;; -! *) -! as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -! for as_dir in $PATH -! do -! IFS=$as_save_IFS -! test -z "$as_dir" && as_dir=. -! for ac_exec_ext in '' $ac_executable_extensions; do -! if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -! ac_cv_path_FLTKCONFIG="$as_dir/$ac_word$ac_exec_ext" -! echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -! break 2 -! fi -! done -! done -! -! ;; -! esac - fi -! FLTKCONFIG=$ac_cv_path_FLTKCONFIG - fi - - if test -n "$FLTKCONFIG"; then - echo "$as_me:$LINENO: result: $FLTKCONFIG" >&5 -*************** -*** 4950,4957 **** ---- 4957,4966 ---- - INSTALL_GUIS="" - INSTALL_OSX="" - -+ if eval "test x$enable_fltk = xyes"; then - { echo "$as_me:$LINENO: WARNING: Sorry, setup GUI requires FLTK 1.1.x." >&5 - echo "$as_me: WARNING: Sorry, setup GUI requires FLTK 1.1.x." >&2;} -+ fi - else - CXXFLAGS="`$FLTKCONFIG --cflags` ${CXXFLAGS}" - GUIS="setup uninst" -*** misc/epm-3.7/deb.c Wed Jan 15 15:29:24 2003 ---- misc/build/epm-3.7/deb.c Mon Nov 20 14:54:51 2006 -*************** -*** 26,31 **** ---- 26,53 ---- - - #include "epm.h" - -+ /* -+ * 'add_size()' - Append Installed-Size tag to DEBIAN/control file -+ */ + * Remove temporary files... +diff -urN epm-3.7-old//configure epm-3.7/configure +--- misc/epm-3.7/configure 2003-07-24 01:20:54.000000000 +0000 ++++ misc/build/epm-3.7/configure 2010-04-19 22:52:32.000000000 +0000 +@@ -1238,6 +1238,11 @@ + fi + fi; + ++# Check whether --enable-fltk or --disable-fltk was given. ++if test "${enable_fltk+set}" = set; then ++ enableval="$enable_fltk" ++fi; ++ + + # Check whether --with-docdir or --without-docdir was given. + if test "${with_docdir+set}" = set; then +@@ -4904,36 +4909,38 @@ + fi + + +-# Extract the first word of "fltk-config", so it can be a program name with args. +-set dummy fltk-config; ac_word=$2 +-echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +-if test "${ac_cv_path_FLTKCONFIG+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 +-else +- case $FLTKCONFIG in +- [\\/]* | ?:[\\/]*) +- ac_cv_path_FLTKCONFIG="$FLTKCONFIG" # Let the user override the test with a path. +- ;; +- *) +- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +-for as_dir in $PATH +-do +- IFS=$as_save_IFS +- test -z "$as_dir" && as_dir=. +- for ac_exec_ext in '' $ac_executable_extensions; do +- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then +- ac_cv_path_FLTKCONFIG="$as_dir/$ac_word$ac_exec_ext" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 +- break 2 ++if eval "test x$enable_fltk = xyes"; then ++ # Extract the first word of "fltk-config", so it can be a program name with args. ++ set dummy fltk-config; ac_word=$2 ++ echo "$as_me:$LINENO: checking for $ac_word" >&5 ++ echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 ++ if test "${ac_cv_path_FLTKCONFIG+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++ else ++ case $FLTKCONFIG in ++ [\\/]* | ?:[\\/]*) ++ ac_cv_path_FLTKCONFIG="$FLTKCONFIG" # Let the user override the test with a path. ++ ;; ++ *) ++ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++ for as_dir in $PATH ++ do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ++ ac_cv_path_FLTKCONFIG="$as_dir/$ac_word$ac_exec_ext" ++ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++ done ++ done + -+ int /* O - 0 = success, 1 = fail */ -+ add_size(FILE *fpControl, /* Control file stream */ -+ const char *directory) /* Directory containing all files to package */ -+ { -+ FILE *fp; -+ char command[1024]; -+ -+ snprintf(command, sizeof(command), "du -k -s %s", directory); -+ fp = popen(command, "r"); -+ if( NULL != fp ) -+ { -+ char size[1024]; -+ fscanf(fp, "%s .", size); -+ fprintf(fpControl, "Installed-Size: %s\n", size); -+ return pclose(fp); -+ } -+ return 1; -+ } - - /* - * 'make_deb()' - Make a Debian software distribution package. -*************** -*** 61,78 **** - if (Verbosity) - puts("Creating Debian distribution..."); - - if (dist->relnumber) - { - if (platname[0]) -! snprintf(name, sizeof(name), "%s-%s-%d-%s", prodname, dist->version, dist->relnumber, - platname); - else -! snprintf(name, sizeof(name), "%s-%s-%d", prodname, dist->version, dist->relnumber); - } - else if (platname[0]) -! snprintf(name, sizeof(name), "%s-%s-%s", prodname, dist->version, platname); - else -! snprintf(name, sizeof(name), "%s-%s", prodname, dist->version); - - /* - * Write the control file for DPKG... ---- 83,111 ---- - if (Verbosity) - puts("Creating Debian distribution..."); - -+ /* -+ * Use debian default naming scheme -+ */ -+ -+ if (!strcmp(platform->machine, "intel")) -+ platname = "i386"; -+ else if (!strcmp(platform->machine, "x86_64")) -+ platname = "amd64"; -+ else if (!strcmp(platform->machine, "ppc")) -+ platname = "powerpc"; ++ ;; ++ esac + fi +-done +-done +- +- ;; +-esac ++ FLTKCONFIG=$ac_cv_path_FLTKCONFIG + fi +-FLTKCONFIG=$ac_cv_path_FLTKCONFIG + + if test -n "$FLTKCONFIG"; then + echo "$as_me:$LINENO: result: $FLTKCONFIG" >&5 +@@ -4950,8 +4957,10 @@ + INSTALL_GUIS="" + INSTALL_OSX="" + ++if eval "test x$enable_fltk = xyes"; then + { echo "$as_me:$LINENO: WARNING: Sorry, setup GUI requires FLTK 1.1.x." >&5 + echo "$as_me: WARNING: Sorry, setup GUI requires FLTK 1.1.x." >&2;} ++fi + else + CXXFLAGS="`$FLTKCONFIG --cflags` ${CXXFLAGS}" + GUIS="setup uninst" +diff -urN epm-3.7-old//deb.c epm-3.7/deb.c +--- misc/epm-3.7/deb.c 2003-01-15 14:29:24.000000000 +0000 ++++ misc/build/epm-3.7/deb.c 2010-04-19 22:53:34.000000000 +0000 +@@ -26,6 +26,28 @@ + + #include "epm.h" + ++/* ++ * 'add_size()' - Append Installed-Size tag to DEBIAN/control file ++ */ + - if (dist->relnumber) - { - if (platname[0]) -! snprintf(name, sizeof(name), "%s_%s-%d_%s", prodname, dist->version, dist->relnumber, - platname); - else -! snprintf(name, sizeof(name), "%s_%s-%d", prodname, dist->version, dist->relnumber); - } - else if (platname[0]) -! snprintf(name, sizeof(name), "%s_%s_%s", prodname, dist->version, platname); - else -! snprintf(name, sizeof(name), "%s_%s", prodname, dist->version); - - /* - * Write the control file for DPKG... -*************** -*** 108,115 **** - * (which we change in get_platform to a common name) - */ - -! if (strcmp(platform->machine, "intel") == 0) - fputs("Architecture: i386\n", fp); - else - fprintf(fp, "Architecture: %s\n", platform->machine); - ---- 141,152 ---- - * (which we change in get_platform to a common name) - */ - -! if (!strcmp(platform->machine, "intel")) - fputs("Architecture: i386\n", fp); -+ else if (!strcmp(platform->machine, "x86_64")) -+ fputs("Architecture: amd64\n", fp); -+ else if (!strcmp(platform->machine, "ppc")) -+ fputs("Architecture: powerpc\n", fp); - else - fprintf(fp, "Architecture: %s\n", platform->machine); - -*************** -*** 148,156 **** - putc('\n', fp); - } - } -! - fclose(fp); -! - /* - * Write the preinst file for DPKG... - */ ---- 185,193 ---- - putc('\n', fp); - } - } -! - fclose(fp); -! - /* - * Write the preinst file for DPKG... - */ -*************** -*** 417,422 **** ---- 454,480 ---- - } - } - -+ -+ /* -+ * Calculate and append Installed-Size to DEBIAN/control -+ */ ++int /* O - 0 = success, 1 = fail */ ++add_size(FILE *fpControl, /* Control file stream */ ++ const char *directory) /* Directory containing all files to package */ ++{ ++ FILE *fp; ++ char command[1024]; + -+ if (Verbosity) -+ puts("Calculating Installed-Size..."); ++ snprintf(command, sizeof(command), "du -k -s %s", directory); ++ fp = popen(command, "r"); ++ if( NULL != fp ) ++ { ++ char size[1024]; ++ fscanf(fp, "%s .", size); ++ fprintf(fpControl, "Installed-Size: %s\n", size); ++ return pclose(fp); ++ } ++ return 1; ++} + + /* + * 'make_deb()' - Make a Debian software distribution package. +@@ -61,18 +83,37 @@ + if (Verbosity) + puts("Creating Debian distribution..."); + ++ /* ++ * Use debian default naming scheme ++ */ ++ ++ if (!strcmp(platform->machine, "intel")) ++#ifdef __FreeBSD_kernel__ ++ platname = "kfreebsd-i386"; ++#else ++ platname = "i386"; ++#endif ++ else if (!strcmp(platform->machine, "x86_64")) ++#ifdef __FreeBSD_kernel__ ++ platname = "kfreebsd-amd64"; ++#else ++ platname = "amd64"; ++#endif ++ else if (!strcmp(platform->machine, "ppc")) ++ platname = "powerpc"; ++ + if (dist->relnumber) + { + if (platname[0]) +- snprintf(name, sizeof(name), "%s-%s-%d-%s", prodname, dist->version, dist->relnumber, ++ snprintf(name, sizeof(name), "%s_%s-%d_%s", prodname, dist->version, dist->relnumber, + platname); + else +- snprintf(name, sizeof(name), "%s-%s-%d", prodname, dist->version, dist->relnumber); ++ snprintf(name, sizeof(name), "%s_%s-%d", prodname, dist->version, dist->relnumber); + } + else if (platname[0]) +- snprintf(name, sizeof(name), "%s-%s-%s", prodname, dist->version, platname); ++ snprintf(name, sizeof(name), "%s_%s_%s", prodname, dist->version, platname); + else +- snprintf(name, sizeof(name), "%s-%s", prodname, dist->version); ++ snprintf(name, sizeof(name), "%s_%s", prodname, dist->version); + + /* + * Write the control file for DPKG... +@@ -108,8 +141,20 @@ + * (which we change in get_platform to a common name) + */ + +- if (strcmp(platform->machine, "intel") == 0) ++ if (!strcmp(platform->machine, "intel")) ++#ifdef __FreeBSD_kernel__ ++ fputs("Architecture: kfreebsd-i386\n", fp); ++#else + fputs("Architecture: i386\n", fp); ++#endif ++ else if (!strcmp(platform->machine, "x86_64")) ++#ifdef __FreeBSD_kernel__ ++ fputs("Architecture: kfreebsd-amd64\n", fp); ++#else ++ fputs("Architecture: amd64\n", fp); ++#endif ++ else if (!strcmp(platform->machine, "ppc")) ++ fputs("Architecture: powerpc\n", fp); + else + fprintf(fp, "Architecture: %s\n", platform->machine); + +@@ -148,9 +193,9 @@ + putc('\n', fp); + } + } +- ++ + fclose(fp); +- ++ + /* + * Write the preinst file for DPKG... + */ +@@ -417,6 +462,27 @@ + } + } + ++ ++ /* ++ * Calculate and append Installed-Size to DEBIAN/control ++ */ + -+ snprintf(filename, sizeof(filename), "%s/%s/DEBIAN/control", directory, name); -+ if ((fp = fopen(filename, "a")) == NULL) -+ { -+ fprintf(stderr, "epm: Unable to Installed-Size to file \"%s\" - %s\n", filename, -+ strerror(errno)); -+ return (1); -+ } -+ -+ snprintf(filename, sizeof(filename), "%s/%s", directory, name); -+ add_size(fp, filename); -+ fclose(fp); ++ if (Verbosity) ++ puts("Calculating Installed-Size..."); + ++ snprintf(filename, sizeof(filename), "%s/%s/DEBIAN/control", directory, name); ++ if ((fp = fopen(filename, "a")) == NULL) ++ { ++ fprintf(stderr, "epm: Unable to Installed-Size to file \"%s\" - %s\n", filename, ++ strerror(errno)); ++ return (1); ++ } ++ ++ snprintf(filename, sizeof(filename), "%s/%s", directory, name); ++ add_size(fp, filename); ++ fclose(fp); + - /* - * Build the distribution from the spec file... - */ -*** misc/epm-3.7/dist.c Thu Aug 7 16:14:40 2003 ---- misc/build/epm-3.7/dist.c Mon Nov 20 14:54:51 2006 -*************** -*** 394,401 **** - strcpy(platform->machine, "mips"); - #elif defined(__hpux) - strcpy(platform->machine, "hppa"); -! #elif defined(_AIX) || defined(__APPLE__) - strcpy(platform->machine, "powerpc"); - #else - for (temp = platform->machine; *temp != '\0'; temp ++) - if (*temp == '-' || *temp == '_') ---- 394,406 ---- - strcpy(platform->machine, "mips"); - #elif defined(__hpux) - strcpy(platform->machine, "hppa"); -! #elif defined(_AIX) - strcpy(platform->machine, "powerpc"); -+ #elif defined(__APPLE__) -+ if (strstr(platform->machine, "86") != NULL) -+ strcpy(platform->machine, "intel"); -+ else -+ strcpy(platform->machine, "powerpc"); - #else - for (temp = platform->machine; *temp != '\0'; temp ++) - if (*temp == '-' || *temp == '_') -*************** -*** 407,413 **** - *temp = tolower(*temp); - - if (strstr(platform->machine, "86") != NULL) -! strcpy(platform->machine, "intel"); - else if (strncmp(platform->machine, "sun", 3) == 0) - strcpy(platform->machine, "sparc"); - #endif /* __sgi */ ---- 412,423 ---- - *temp = tolower(*temp); - - if (strstr(platform->machine, "86") != NULL) -! { -! if (strstr(platform->machine, "64") != NULL) -! strcpy(platform->machine, "x86_64"); -! else -! strcpy(platform->machine, "intel"); -! } - else if (strncmp(platform->machine, "sun", 3) == 0) - strcpy(platform->machine, "sparc"); - #endif /* __sgi */ -*** misc/epm-3.7/epm.c Tue Oct 28 15:48:30 2003 ---- misc/build/epm-3.7/epm.c Mon Nov 20 14:54:51 2006 -*************** -*** 547,552 **** ---- 547,553 ---- - { - puts(EPM_VERSION); - puts("Copyright 1999-2003 by Easy Software Products."); -+ puts("Patched for OpenOffice.org"); - puts(""); - puts("EPM is free software and comes with ABSOLUTELY NO WARRANTY; for details"); - puts("see the GNU General Public License in the file COPYING or at"); -*** misc/epm-3.7/file.c Wed Jul 23 23:41:08 2003 ---- misc/build/epm-3.7/file.c Mon Nov 20 14:54:51 2006 -*************** -*** 108,114 **** - fclose(dstfile); - - chmod(dst, mode); -- chown(dst, owner, group); - - return (0); - } ---- 108,113 ---- -*************** -*** 138,144 **** - { - mkdir(buffer, 0777); - chmod(buffer, mode | 0700); -- chown(buffer, owner, group); - } - } - ---- 137,142 ---- -*************** -*** 151,157 **** - { - mkdir(buffer, 0777); - chmod(buffer, mode | 0700); -- chown(buffer, owner, group); - } - - return (0); ---- 149,154 ---- -*** misc/epm-3.7/osx.c Wed Jul 23 23:41:08 2003 ---- misc/build/epm-3.7/osx.c Mon Nov 20 14:54:51 2006 -*************** -*** 373,379 **** - else - snprintf(filename, sizeof(filename), "%s/%s", current, directory); - -! run_command(NULL, "/Developer/Applications/PackageMaker.app/" - "Contents/MacOS/PackageMaker -build " - "-p %s/%s.pkg -f %s/Package -r %s/Resources -d %s/%s-desc.plist -i %s/%s-info.plist", - filename, prodname, filename, filename, filename, prodname, filename, prodname); ---- 373,379 ---- - else - snprintf(filename, sizeof(filename), "%s/%s", current, directory); - -! run_command(NULL, "/Developer/Applications/Utilities/PackageMaker.app/" - "Contents/MacOS/PackageMaker -build " - "-p %s/%s.pkg -f %s/Package -r %s/Resources -d %s/%s-desc.plist -i %s/%s-info.plist", - filename, prodname, filename, filename, filename, prodname, filename, prodname); -*** misc/epm-3.7/pkg.c Tue Dec 17 19:57:56 2002 ---- misc/build/epm-3.7/pkg.c Mon Nov 20 14:54:51 2006 -*************** -*** 429,503 **** - - fclose(fp); - -- /* -- * Build the distribution from the prototype file... -- */ -- -- if (Verbosity) -- puts("Building PKG binary distribution..."); -- -- if (run_command(NULL, "pkgmk -o -f %s/%s.prototype -d %s/%s", -- directory, prodname, current, directory)) -- return (1); -- -- /* -- * Tar and compress the distribution... -- */ -- -- if (Verbosity) -- puts("Creating tar.gz file for distribution..."); -- -- snprintf(filename, sizeof(filename), "%s/%s.tar.gz", directory, name); -- -- if ((tarfile = tar_open(filename, 1)) == NULL) -- return (1); -- -- snprintf(filename, sizeof(filename), "%s/%s", directory, prodname); -- -- if (tar_directory(tarfile, filename, prodname)) -- { -- tar_close(tarfile); -- return (1); -- } -- -- tar_close(tarfile); -- -- /* -- * Make a package stream file... -- */ -- -- if (Verbosity) -- puts("Copying into package stream file..."); -- -- if (run_command(directory, "pkgtrans -s %s/%s %s.pkg %s", -- current, directory, name, prodname)) -- return (1); -- -- /* -- * Remove temporary files... -- */ -- -- if (!KeepFiles) -- { -- if (Verbosity) -- puts("Removing temporary distribution files..."); -- -- snprintf(filename, sizeof(filename), "%s/%s.pkginfo", directory, prodname); -- unlink(filename); -- snprintf(filename, sizeof(filename), "%s/%s.depend", directory, prodname); -- unlink(filename); -- snprintf(filename, sizeof(filename), "%s/%s.prototype", directory, prodname); -- unlink(filename); -- if (preinstall[0]) -- unlink(preinstall); -- if (postinstall[0]) -- unlink(postinstall); -- if (preremove[0]) -- unlink(preremove); -- if (postremove[0]) -- unlink(postremove); -- } -- - return (0); - } - ---- 429,434 ---- -*** misc/epm-3.7/qprintf.c Mon Jan 27 22:48:03 2003 ---- misc/build/epm-3.7/qprintf.c Mon Nov 20 14:54:51 2006 -*************** -*** 181,192 **** - - for (i = slen; i > 0; i --, s ++, bytes ++) - { - if (strchr("`~!#$%^&*()[{]}\\|;\'\"<>? ", *s)) - { - putc('\\', fp); - bytes ++; - } -! - putc(*s, fp); - } - ---- 181,199 ---- - - for (i = slen; i > 0; i --, s ++, bytes ++) - { -+ #if defined(__FreeBSD__) -+ if (strchr("`~!#%^&*()[{]}\\|;\'\"<>? ", *s)) -+ { -+ putc('\\', fp); -+ bytes ++; -+ } -+ #else - if (strchr("`~!#$%^&*()[{]}\\|;\'\"<>? ", *s)) - { - putc('\\', fp); - bytes ++; - } -! #endif - putc(*s, fp); - } - -*** misc/epm-3.7/rpm.c Wed Oct 1 21:27:15 2003 ---- misc/build/epm-3.7/rpm.c Mon Nov 20 14:54:51 2006 -*************** -*** 38,44 **** - dist_t *dist, /* I - Distribution information */ - struct utsname *platform) /* I - Platform information */ - { -! int i; /* Looping var */ - FILE *fp; /* Spec file */ - char name[1024]; /* Full product name */ - char specname[1024]; /* Spec filename */ ---- 38,44 ---- - dist_t *dist, /* I - Distribution information */ - struct utsname *platform) /* I - Platform information */ - { -! int i,n; /* Looping vars */ - FILE *fp; /* Spec file */ - char name[1024]; /* Full product name */ - char specname[1024]; /* Spec filename */ -*************** -*** 160,165 **** ---- 160,167 ---- - fprintf(fp, "Requires: %s", dname); - else if (d->type == DEPEND_PROVIDES) - fprintf(fp, "Provides: %s", dname); -+ else if (d->type == DEPEND_REPLACES) -+ fprintf(fp, "Obsoletes: %s", dname); - else - fprintf(fp, "Conflicts: %s", dname); - -*************** -*** 186,200 **** - for (i = 0; i < dist->num_descriptions; i ++) - fprintf(fp, "%s\n", dist->descriptions[i]); - -! fputs("%pre\n", fp); - for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) - if (c->type == COMMAND_PRE_INSTALL) - fprintf(fp, "%s\n", c->command); - -! fputs("%post\n", fp); - for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) - if (c->type == COMMAND_POST_INSTALL) - fprintf(fp, "%s\n", c->command); - - for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) - if (tolower(file->type) == 'i') ---- 188,220 ---- - for (i = 0; i < dist->num_descriptions; i ++) - fprintf(fp, "%s\n", dist->descriptions[i]); - -! /* -! * %pre -! */ -! n = 0; - for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) -+ { - if (c->type == COMMAND_PRE_INSTALL) -+ { -+ if (1 == ++n) /* Only write %pre if there is at least one command */ -+ fputs("%pre\n", fp); - fprintf(fp, "%s\n", c->command); -+ } -+ } - -! /* -! * %post -! */ -! n = 0; - for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) -+ { - if (c->type == COMMAND_POST_INSTALL) -+ { -+ if (1 == ++n) /* Only write %post if there is at least one command */ -+ fputs("%post\n", fp); - fprintf(fp, "%s\n", c->command); -+ } -+ } - - for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) - if (tolower(file->type) == 'i') -*************** -*** 202,207 **** ---- 222,229 ---- - - if (i) - { -+ if (1 == ++n) /* If not previously done so, write %post here */ -+ fputs("%post\n", fp); - fputs("if test \"x$1\" = x1; then\n", fp); - fputs(" echo Setting up init scripts...\n", fp); - -*************** -*** 259,265 **** - fputs("fi\n", fp); - } - -! fputs("%preun\n", fp); - for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) - if (tolower(file->type) == 'i') - break; ---- 281,290 ---- - fputs("fi\n", fp); - } - -! /* -! * %preun -! */ -! n = 0; - for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) - if (tolower(file->type) == 'i') - break; -*************** -*** 266,271 **** ---- 291,297 ---- - - if (i) - { -+ fputs("%preun\n", fp); ++n; /* Need to write %preun here */ - fputs("if test \"x$1\" = x0; then\n", fp); - fputs(" echo Cleaning up init scripts...\n", fp); - -*************** -*** 315,327 **** - } - - for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) - if (c->type == COMMAND_PRE_REMOVE) - fprintf(fp, "%s\n", c->command); - -! fputs("%postun\n", fp); - for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) - if (c->type == COMMAND_POST_REMOVE) - fprintf(fp, "%s\n", c->command); - - fputs("%files\n", fp); - for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) ---- 341,369 ---- - } - - for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) -+ { - if (c->type == COMMAND_PRE_REMOVE) -+ { -+ if (1 == ++n) /* Only write %preun if not previously done so */ -+ fputs("%preun\n", fp); -+ - fprintf(fp, "%s\n", c->command); -+ } -+ } - -! /* -! * %post -! */ -! n = 0; - for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) -+ { - if (c->type == COMMAND_POST_REMOVE) -+ { -+ if (1 == ++n) /* Only write %post if there is at least one command */ -+ fputs("%postun\n", fp); - fprintf(fp, "%s\n", c->command); -+ } -+ } - - fputs("%files\n", fp); - for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) -*************** -*** 415,467 **** - } - } - -- /* -- * Build the distribution from the spec file... -- */ -- -- if (Verbosity) -- puts("Building RPM binary distribution..."); -- -- if (strcmp(platform->machine, "intel") == 0) -- { -- if (run_command(NULL, EPM_RPMBUILD " %s -bb " EPM_RPMARCH "i386 %s", -- Verbosity == 0 ? "--quiet" : "", specname)) -- return (1); -- } -- else if (run_command(NULL, EPM_RPMBUILD " %s -bb " EPM_RPMARCH "%s %s", -- Verbosity == 0 ? "--quiet" : "", platform->machine, -- specname)) -- return (1); -- -- /* -- * Move the RPM to the local directory and rename the RPM using the -- * product name specified by the user... -- */ -- -- if (strcmp(platform->machine, "intel") == 0) -- run_command(NULL, "/bin/mv %s/RPMS/i386/%s-%s-%d.i386.rpm %s/%s.rpm", -- rpmdir, prodname, dist->version, dist->relnumber, -- directory, name); -- else -- run_command(NULL, "/bin/mv %s/RPMS/%s/%s-%s-%d.%s.rpm %s/%s.rpm", -- rpmdir, platform->machine, prodname, dist->version, -- dist->relnumber, platform->machine, directory, name); -- -- /* -- * Remove temporary files... -- */ -- -- if (!KeepFiles) -- { -- if (Verbosity) -- puts("Removing temporary distribution files..."); -- -- run_command(NULL, "/bin/rm -rf %s/RPMS", directory); -- run_command(NULL, "/bin/rm -rf %s/buildroot", directory); -- -- unlink(specname); -- } -- - return (0); - } - ---- 457,462 ---- ++ + /* + * Build the distribution from the spec file... + */ +diff -urN epm-3.7-old//dist.c epm-3.7/dist.c +--- misc/epm-3.7/dist.c 2003-08-07 14:14:40.000000000 +0000 ++++ misc/build/epm-3.7/dist.c 2010-04-19 22:52:32.000000000 +0000 +@@ -394,8 +394,13 @@ + strcpy(platform->machine, "mips"); + #elif defined(__hpux) + strcpy(platform->machine, "hppa"); +-#elif defined(_AIX) || defined(__APPLE__) ++#elif defined(_AIX) + strcpy(platform->machine, "powerpc"); ++#elif defined(__APPLE__) ++ if (strstr(platform->machine, "86") != NULL) ++ strcpy(platform->machine, "intel"); ++ else ++ strcpy(platform->machine, "powerpc"); + #else + for (temp = platform->machine; *temp != '\0'; temp ++) + if (*temp == '-' || *temp == '_') +@@ -407,7 +412,12 @@ + *temp = tolower(*temp); + + if (strstr(platform->machine, "86") != NULL) +- strcpy(platform->machine, "intel"); ++ { ++ if (strstr(platform->machine, "64") != NULL) ++ strcpy(platform->machine, "x86_64"); ++ else ++ strcpy(platform->machine, "intel"); ++ } + else if (strncmp(platform->machine, "sun", 3) == 0) + strcpy(platform->machine, "sparc"); + #endif /* __sgi */ +diff -urN epm-3.7-old//epm.c epm-3.7/epm.c +--- misc/epm-3.7/epm.c 2003-10-28 14:48:30.000000000 +0000 ++++ misc/build/epm-3.7/epm.c 2010-04-19 22:52:32.000000000 +0000 +@@ -547,6 +547,7 @@ + { + puts(EPM_VERSION); + puts("Copyright 1999-2003 by Easy Software Products."); ++ puts("Patched for OpenOffice.org"); + puts(""); + puts("EPM is free software and comes with ABSOLUTELY NO WARRANTY; for details"); + puts("see the GNU General Public License in the file COPYING or at"); +diff -urN epm-3.7-old//file.c epm-3.7/file.c +--- misc/epm-3.7/file.c 2003-07-23 21:41:08.000000000 +0000 ++++ misc/build/epm-3.7/file.c 2010-04-19 22:52:32.000000000 +0000 +@@ -108,7 +108,6 @@ + fclose(dstfile); + + chmod(dst, mode); +- chown(dst, owner, group); + + return (0); + } +@@ -138,7 +137,6 @@ + { + mkdir(buffer, 0777); + chmod(buffer, mode | 0700); +- chown(buffer, owner, group); + } + } + +@@ -151,7 +149,6 @@ + { + mkdir(buffer, 0777); + chmod(buffer, mode | 0700); +- chown(buffer, owner, group); + } + + return (0); +diff -urN epm-3.7-old//osx.c epm-3.7/osx.c +--- misc/epm-3.7/osx.c 2003-07-23 21:41:08.000000000 +0000 ++++ misc/build/epm-3.7/osx.c 2010-04-19 22:52:32.000000000 +0000 +@@ -373,7 +373,7 @@ + else + snprintf(filename, sizeof(filename), "%s/%s", current, directory); + +- run_command(NULL, "/Developer/Applications/PackageMaker.app/" ++ run_command(NULL, "/Developer/Applications/Utilities/PackageMaker.app/" + "Contents/MacOS/PackageMaker -build " + "-p %s/%s.pkg -f %s/Package -r %s/Resources -d %s/%s-desc.plist -i %s/%s-info.plist", + filename, prodname, filename, filename, filename, prodname, filename, prodname); +diff -urN epm-3.7-old//pkg.c epm-3.7/pkg.c +--- misc/epm-3.7/pkg.c 2002-12-17 18:57:56.000000000 +0000 ++++ misc/build/epm-3.7/pkg.c 2010-04-19 22:52:32.000000000 +0000 +@@ -429,75 +429,6 @@ + + fclose(fp); + +- /* +- * Build the distribution from the prototype file... +- */ +- +- if (Verbosity) +- puts("Building PKG binary distribution..."); +- +- if (run_command(NULL, "pkgmk -o -f %s/%s.prototype -d %s/%s", +- directory, prodname, current, directory)) +- return (1); +- +- /* +- * Tar and compress the distribution... +- */ +- +- if (Verbosity) +- puts("Creating tar.gz file for distribution..."); +- +- snprintf(filename, sizeof(filename), "%s/%s.tar.gz", directory, name); +- +- if ((tarfile = tar_open(filename, 1)) == NULL) +- return (1); +- +- snprintf(filename, sizeof(filename), "%s/%s", directory, prodname); +- +- if (tar_directory(tarfile, filename, prodname)) +- { +- tar_close(tarfile); +- return (1); +- } +- +- tar_close(tarfile); +- +- /* +- * Make a package stream file... +- */ +- +- if (Verbosity) +- puts("Copying into package stream file..."); +- +- if (run_command(directory, "pkgtrans -s %s/%s %s.pkg %s", +- current, directory, name, prodname)) +- return (1); +- +- /* +- * Remove temporary files... +- */ +- +- if (!KeepFiles) +- { +- if (Verbosity) +- puts("Removing temporary distribution files..."); +- +- snprintf(filename, sizeof(filename), "%s/%s.pkginfo", directory, prodname); +- unlink(filename); +- snprintf(filename, sizeof(filename), "%s/%s.depend", directory, prodname); +- unlink(filename); +- snprintf(filename, sizeof(filename), "%s/%s.prototype", directory, prodname); +- unlink(filename); +- if (preinstall[0]) +- unlink(preinstall); +- if (postinstall[0]) +- unlink(postinstall); +- if (preremove[0]) +- unlink(preremove); +- if (postremove[0]) +- unlink(postremove); +- } +- + return (0); + } + +diff -urN epm-3.7-old//qprintf.c epm-3.7/qprintf.c +--- misc/epm-3.7-old/qprintf.c 2003-01-27 21:48:03.000000000 +0000 ++++ misc/build/epm-3.7/qprintf.c 2010-04-19 22:52:32.000000000 +0000 +@@ -181,12 +181,19 @@ + + for (i = slen; i > 0; i --, s ++, bytes ++) + { ++#if defined(__FreeBSD__) ++ if (strchr("`~!#%^&*()[{]}\\|;\'\"<>? ", *s)) ++ { ++ putc('\\', fp); ++ bytes ++; ++ } ++#else + if (strchr("`~!#$%^&*()[{]}\\|;\'\"<>? ", *s)) + { + putc('\\', fp); + bytes ++; + } +- ++#endif + putc(*s, fp); + } + +diff -urN epm-3.7-old//rpm.c epm-3.7/rpm.c +--- misc/epm-3.7/rpm.c 2003-10-01 19:27:15.000000000 +0000 ++++ misc/build/epm-3.7/rpm.c 2010-04-19 22:52:32.000000000 +0000 +@@ -38,7 +38,7 @@ + dist_t *dist, /* I - Distribution information */ + struct utsname *platform) /* I - Platform information */ + { +- int i; /* Looping var */ ++ int i,n; /* Looping vars */ + FILE *fp; /* Spec file */ + char name[1024]; /* Full product name */ + char specname[1024]; /* Spec filename */ +@@ -160,6 +160,8 @@ + fprintf(fp, "Requires: %s", dname); + else if (d->type == DEPEND_PROVIDES) + fprintf(fp, "Provides: %s", dname); ++ else if (d->type == DEPEND_REPLACES) ++ fprintf(fp, "Obsoletes: %s", dname); + else + fprintf(fp, "Conflicts: %s", dname); + +@@ -186,15 +188,33 @@ + for (i = 0; i < dist->num_descriptions; i ++) + fprintf(fp, "%s\n", dist->descriptions[i]); + +- fputs("%pre\n", fp); ++ /* ++ * %pre ++ */ ++ n = 0; + for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) ++ { + if (c->type == COMMAND_PRE_INSTALL) ++ { ++ if (1 == ++n) /* Only write %pre if there is at least one command */ ++ fputs("%pre\n", fp); + fprintf(fp, "%s\n", c->command); ++ } ++ } + +- fputs("%post\n", fp); ++ /* ++ * %post ++ */ ++ n = 0; + for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) ++ { + if (c->type == COMMAND_POST_INSTALL) ++ { ++ if (1 == ++n) /* Only write %post if there is at least one command */ ++ fputs("%post\n", fp); + fprintf(fp, "%s\n", c->command); ++ } ++ } + + for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) + if (tolower(file->type) == 'i') +@@ -202,6 +222,8 @@ + + if (i) + { ++ if (1 == ++n) /* If not previously done so, write %post here */ ++ fputs("%post\n", fp); + fputs("if test \"x$1\" = x1; then\n", fp); + fputs(" echo Setting up init scripts...\n", fp); + +@@ -259,13 +281,17 @@ + fputs("fi\n", fp); + } + +- fputs("%preun\n", fp); ++ /* ++ * %preun ++ */ ++ n = 0; + for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) + if (tolower(file->type) == 'i') + break; + + if (i) + { ++ fputs("%preun\n", fp); ++n; /* Need to write %preun here */ + fputs("if test \"x$1\" = x0; then\n", fp); + fputs(" echo Cleaning up init scripts...\n", fp); + +@@ -315,13 +341,29 @@ + } + + for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) ++ { + if (c->type == COMMAND_PRE_REMOVE) ++ { ++ if (1 == ++n) /* Only write %preun if not previously done so */ ++ fputs("%preun\n", fp); ++ + fprintf(fp, "%s\n", c->command); ++ } ++ } + +- fputs("%postun\n", fp); ++ /* ++ * %post ++ */ ++ n = 0; + for (i = dist->num_commands, c = dist->commands; i > 0; i --, c ++) ++ { + if (c->type == COMMAND_POST_REMOVE) ++ { ++ if (1 == ++n) /* Only write %post if there is at least one command */ ++ fputs("%postun\n", fp); + fprintf(fp, "%s\n", c->command); ++ } ++ } + + fputs("%files\n", fp); + for (i = dist->num_files, file = dist->files; i > 0; i --, file ++) +@@ -415,53 +457,6 @@ + } + } + +- /* +- * Build the distribution from the spec file... +- */ +- +- if (Verbosity) +- puts("Building RPM binary distribution..."); +- +- if (strcmp(platform->machine, "intel") == 0) +- { +- if (run_command(NULL, EPM_RPMBUILD " %s -bb " EPM_RPMARCH "i386 %s", +- Verbosity == 0 ? "--quiet" : "", specname)) +- return (1); +- } +- else if (run_command(NULL, EPM_RPMBUILD " %s -bb " EPM_RPMARCH "%s %s", +- Verbosity == 0 ? "--quiet" : "", platform->machine, +- specname)) +- return (1); +- +- /* +- * Move the RPM to the local directory and rename the RPM using the +- * product name specified by the user... +- */ +- +- if (strcmp(platform->machine, "intel") == 0) +- run_command(NULL, "/bin/mv %s/RPMS/i386/%s-%s-%d.i386.rpm %s/%s.rpm", +- rpmdir, prodname, dist->version, dist->relnumber, +- directory, name); +- else +- run_command(NULL, "/bin/mv %s/RPMS/%s/%s-%s-%d.%s.rpm %s/%s.rpm", +- rpmdir, platform->machine, prodname, dist->version, +- dist->relnumber, platform->machine, directory, name); +- +- /* +- * Remove temporary files... +- */ +- +- if (!KeepFiles) +- { +- if (Verbosity) +- puts("Removing temporary distribution files..."); +- +- run_command(NULL, "/bin/rm -rf %s/RPMS", directory); +- run_command(NULL, "/bin/rm -rf %s/buildroot", directory); +- +- unlink(specname); +- } +- + return (0); + } + -- cgit