From: Pascal Stumpf Date: Sat, 11 Aug 2012 11:43:57 +0000 (+0200) Subject: Make dtinfo work on OpenBSD. X-Git-Tag: 2.2.0b~83^2~24 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=a8d5c1f0ba0ea878d92bb24bb3167107685dbf59;p=oweals%2Fcde.git Make dtinfo work on OpenBSD. strstream.h is now called "strstream" and is obsolete, but use it anyway until all code is converted over. This also needs std:: added, at least for GCC 4.2.1. Lastly, when hardcoding the path to perl, /usr/bin/perl should be used rather than anything else. --- diff --git a/cde/programs/dtinfo/tools/misc/msgsets.C b/cde/programs/dtinfo/tools/misc/msgsets.C index 48f0d248..6b59abf2 100644 --- a/cde/programs/dtinfo/tools/misc/msgsets.C +++ b/cde/programs/dtinfo/tools/misc/msgsets.C @@ -42,7 +42,7 @@ #ifdef __cplusplus #include -#if !defined(__DECCXX) && !defined(USL) +#if !defined(__DECCXX) && !defined(USL) && !defined(CSRG_BASED) #include #else #include @@ -195,11 +195,12 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE; /* All Rights Reserved */ #include -#include +#include +#include #define BUFFER_INCR_UNIT 64 -ostrstream **sets; +std::ostrstream **sets; int sets_cnt = 0; /* number of sets slots occupied */ int sets_max = 0; /* total number of sets slots */ @@ -509,14 +510,14 @@ case 1: sets_max += BUFFER_INCR_UNIT; if (sets_cnt == 0) { - sets = (ostrstream **) - malloc(sizeof(ostrstream *) * sets_max); + sets = (std::ostrstream **) + malloc(sizeof(std::ostrstream *) * sets_max); set_nums = (int *) malloc(sizeof(int) * sets_max); } else { - sets = (ostrstream **) - realloc(sets, sizeof(ostrstream *) * sets_max); + sets = (std::ostrstream **) + realloc(sets, sizeof(std::ostrstream *) * sets_max); set_nums = (int *) realloc(set_nums, sizeof(int) * sets_max); } @@ -528,7 +529,7 @@ case 1: } if (cur_set >= 0) *sets[cur_set] << '\0'; - sets[cur_set = sets_cnt++] = new ostrstream; + sets[cur_set = sets_cnt++] = new std::ostrstream; *sets[cur_set] << (char*)yytext; @@ -556,7 +557,7 @@ case 3: case 4: { if (cur_set < 0) { // maybe not a message id - cout << (char*)yytext; + std::cout << (char*)yytext; } else { // must be a message id *sets[cur_set] << (char*)yytext; @@ -581,7 +582,7 @@ case 7: case 8: { if (cur_set < 0) - cout << *(char*)yytext; + std::cout << *(char*)yytext; else *sets[cur_set] << *(char*)yytext; } @@ -1151,7 +1152,7 @@ main() for (i = 0; i < sets_cnt; i++) { const char* record = sets[sorted[i]]->str(); - cout << record << '\n' << flush; + std::cout << record << '\n' << std::flush; } free(sorted); diff --git a/cde/programs/dtinfo/tools/misc/treeres b/cde/programs/dtinfo/tools/misc/treeres index 65377435..d077302e 100755 --- a/cde/programs/dtinfo/tools/misc/treeres +++ b/cde/programs/dtinfo/tools/misc/treeres @@ -1,5 +1,5 @@ # feed this into perl -eval '(exit $?0)' && eval 'exec /usr/local/bin/perl $0 ${1+"$@"}' & eval 'exec /usr/local/bin/perl $0 $argv' +eval '(exit $?0)' && eval 'exec /usr/bin/perl $0 ${1+"$@"}' & eval 'exec /usr/bin/perl $0 $argv' if 0; # treeres - resource file preprocessor