diff options
| author | Joshua Lock <josh@linux.intel.com> | 2009-06-18 13:21:05 +0100 |
|---|---|---|
| committer | Joshua Lock <josh@linux.intel.com> | 2009-06-18 13:21:05 +0100 |
| commit | 0bf673e01fcd7bc55bed693fffc4e9c257cfe56b (patch) | |
| tree | 95a1e206fb042bfc286741072b3e08752064f8ba | |
| parent | 7948c08ab13468fd15d6029a979635f6ded52ad5 (diff) | |
| download | poky-0bf673e01fcd7bc55bed693fffc4e9c257cfe56b.tar.gz | |
cdrtools-native: Add a patch from Richard to work around a glibc name conflict
| -rw-r--r-- | meta/packages/cdrtools/cdrtools-native/glibc-conflict-rename.patch | 228 | ||||
| -rw-r--r-- | meta/packages/cdrtools/cdrtools-native_2.01.bb | 5 |
2 files changed, 231 insertions, 2 deletions
diff --git a/meta/packages/cdrtools/cdrtools-native/glibc-conflict-rename.patch b/meta/packages/cdrtools/cdrtools-native/glibc-conflict-rename.patch new file mode 100644 index 0000000000..0b9b892aa2 --- /dev/null +++ b/meta/packages/cdrtools/cdrtools-native/glibc-conflict-rename.patch | |||
| @@ -0,0 +1,228 @@ | |||
| 1 | Index: cdrtools-2.01/include/schily.h | ||
| 2 | =================================================================== | ||
| 3 | --- cdrtools-2.01.orig/include/schily.h 2009-06-18 11:30:45.000000000 +0100 | ||
| 4 | +++ cdrtools-2.01/include/schily.h 2009-06-18 11:31:22.000000000 +0100 | ||
| 5 | @@ -108,7 +108,7 @@ | ||
| 6 | /* 6th arg not const, fexecv forces av[ac] = NULL */ | ||
| 7 | extern int fexecv __PR((const char *, FILE *, FILE *, FILE *, int, | ||
| 8 | char **)); | ||
| 9 | -extern int fexecve __PR((const char *, FILE *, FILE *, FILE *, | ||
| 10 | +extern int fexecve_schily __PR((const char *, FILE *, FILE *, FILE *, | ||
| 11 | char * const *, char * const *)); | ||
| 12 | extern int fspawnv __PR((FILE *, FILE *, FILE *, int, char * const *)); | ||
| 13 | extern int fspawnl __PR((FILE *, FILE *, FILE *, | ||
| 14 | @@ -187,7 +187,7 @@ | ||
| 15 | extern char *findbytes __PR((const void *, int, char)); | ||
| 16 | extern int findline __PR((const char *, char, const char *, | ||
| 17 | int, char **, int)); | ||
| 18 | -extern int getline __PR((char *, int)); | ||
| 19 | +extern int getline_schily __PR((char *, int)); | ||
| 20 | extern int getstr __PR((char *, int)); | ||
| 21 | extern int breakline __PR((char *, char, char **, int)); | ||
| 22 | extern int getallargs __PR((int *, char * const**, const char *, ...)); | ||
| 23 | Index: cdrtools-2.01/libscg/scsitransp.c | ||
| 24 | =================================================================== | ||
| 25 | --- cdrtools-2.01.orig/libscg/scsitransp.c 2009-06-18 11:33:57.000000000 +0100 | ||
| 26 | +++ cdrtools-2.01/libscg/scsitransp.c 2009-06-18 11:34:24.000000000 +0100 | ||
| 27 | @@ -323,7 +323,7 @@ | ||
| 28 | |||
| 29 | js_printf("%s", msg); | ||
| 30 | flush(); | ||
| 31 | - if (getline(okbuf, sizeof (okbuf)) == EOF) | ||
| 32 | + if (getline_schily(okbuf, sizeof (okbuf)) == EOF) | ||
| 33 | exit(EX_BAD); | ||
| 34 | if (streql(okbuf, "y") || streql(okbuf, "yes") || | ||
| 35 | streql(okbuf, "Y") || streql(okbuf, "YES")) | ||
| 36 | Index: cdrtools-2.01/libschily/fexec.c | ||
| 37 | =================================================================== | ||
| 38 | --- cdrtools-2.01.orig/libschily/fexec.c 2009-06-18 11:29:29.000000000 +0100 | ||
| 39 | +++ cdrtools-2.01/libschily/fexec.c 2009-06-18 11:30:36.000000000 +0100 | ||
| 40 | @@ -159,7 +159,7 @@ | ||
| 41 | } while (p != NULL); | ||
| 42 | va_end(args); | ||
| 43 | |||
| 44 | - ret = fexecve(name, in, out, err, av, env); | ||
| 45 | + ret = fexecve_schily(name, in, out, err, av, env); | ||
| 46 | if (av != xav) | ||
| 47 | free(av); | ||
| 48 | return (ret); | ||
| 49 | @@ -173,11 +173,11 @@ | ||
| 50 | char *av[]; | ||
| 51 | { | ||
| 52 | av[ac] = NULL; /* force list to be null terminated */ | ||
| 53 | - return (fexecve(name, in, out, err, av, environ)); | ||
| 54 | + return (fexecve_schily(name, in, out, err, av, environ)); | ||
| 55 | } | ||
| 56 | |||
| 57 | EXPORT int | ||
| 58 | -fexecve(name, in, out, err, av, env) | ||
| 59 | +fexecve_schily(name, in, out, err, av, env) | ||
| 60 | const char *name; | ||
| 61 | FILE *in, *out, *err; | ||
| 62 | char * const av[], * const env[]; | ||
| 63 | Index: cdrtools-2.01/libschily/stdio/fgetline.c | ||
| 64 | =================================================================== | ||
| 65 | --- cdrtools-2.01.orig/libschily/stdio/fgetline.c 2009-06-18 11:28:14.000000000 +0100 | ||
| 66 | +++ cdrtools-2.01/libschily/stdio/fgetline.c 2009-06-18 11:28:55.000000000 +0100 | ||
| 67 | @@ -64,7 +64,7 @@ | ||
| 68 | } | ||
| 69 | |||
| 70 | EXPORT int | ||
| 71 | -getline(buf, len) | ||
| 72 | +getline_schily(buf, len) | ||
| 73 | char *buf; | ||
| 74 | int len; | ||
| 75 | { | ||
| 76 | Index: cdrtools-2.01/readcd/io.c | ||
| 77 | =================================================================== | ||
| 78 | --- cdrtools-2.01.orig/readcd/io.c 2009-06-18 11:33:57.000000000 +0100 | ||
| 79 | +++ cdrtools-2.01/readcd/io.c 2009-06-18 11:34:38.000000000 +0100 | ||
| 80 | @@ -138,7 +138,7 @@ | ||
| 81 | (*prt)(s, *lp, mini, maxi, dp); | ||
| 82 | flush(); | ||
| 83 | line[0] = '\0'; | ||
| 84 | - if (getline(line, 80) == EOF) | ||
| 85 | + if (getline_schily(line, 80) == EOF) | ||
| 86 | exit(EX_BAD); | ||
| 87 | |||
| 88 | linep = skipwhite(line); | ||
| 89 | @@ -205,7 +205,7 @@ | ||
| 90 | printf("%r", form, args); | ||
| 91 | va_end(args); | ||
| 92 | flush(); | ||
| 93 | - if (getline(okbuf, sizeof(okbuf)) == EOF) | ||
| 94 | + if (getline_schily(okbuf, sizeof(okbuf)) == EOF) | ||
| 95 | exit(EX_BAD); | ||
| 96 | if (okbuf[0] == '?') { | ||
| 97 | printf("Enter 'y', 'Y', 'yes' or 'YES' if you agree with the previous asked question.\n"); | ||
| 98 | Index: cdrtools-2.01/readcd/readcd.c | ||
| 99 | =================================================================== | ||
| 100 | --- cdrtools-2.01.orig/readcd/readcd.c 2009-06-18 11:33:58.000000000 +0100 | ||
| 101 | +++ cdrtools-2.01/readcd/readcd.c 2009-06-18 11:35:03.000000000 +0100 | ||
| 102 | @@ -1651,7 +1651,7 @@ | ||
| 103 | error("Copy from SCSI (%d,%d,%d) disk to file\n", | ||
| 104 | scg_scsibus(scgp), scg_target(scgp), scg_lun(scgp)); | ||
| 105 | error("Enter filename [%s]: ", defname); flush(); | ||
| 106 | - (void) getline(filename, sizeof (filename)); | ||
| 107 | + (void) getline_schily(filename, sizeof (filename)); | ||
| 108 | } | ||
| 109 | |||
| 110 | if (askrange) { | ||
| 111 | @@ -1820,7 +1820,7 @@ | ||
| 112 | error("Copy from file to SCSI (%d,%d,%d) disk\n", | ||
| 113 | scg_scsibus(scgp), scg_target(scgp), scg_lun(scgp)); | ||
| 114 | error("Enter filename [%s]: ", defname); flush(); | ||
| 115 | - (void) getline(filename, sizeof (filename)); | ||
| 116 | + (void) getline_schily(filename, sizeof (filename)); | ||
| 117 | error("Notice: reading from file always starts at file offset 0.\n"); | ||
| 118 | |||
| 119 | getlong("Enter starting sector for copy:", &addr, 0L, end-1); | ||
| 120 | Index: cdrtools-2.01/scgcheck/dmaresid.c | ||
| 121 | =================================================================== | ||
| 122 | --- cdrtools-2.01.orig/scgcheck/dmaresid.c 2009-06-18 11:33:59.000000000 +0100 | ||
| 123 | +++ cdrtools-2.01/scgcheck/dmaresid.c 2009-06-18 11:35:43.000000000 +0100 | ||
| 124 | @@ -64,7 +64,7 @@ | ||
| 125 | printf("Ready to start test for working DMA residual count? Enter <CR> to continue: "); | ||
| 126 | fprintf(logfile, "**********> Testing for working DMA residual count.\n"); | ||
| 127 | flushit(); | ||
| 128 | - (void) getline(abuf, sizeof (abuf)); | ||
| 129 | + (void) getline_schily(abuf, sizeof (abuf)); | ||
| 130 | |||
| 131 | printf("**********> Testing for working DMA residual count == 0.\n"); | ||
| 132 | fprintf(logfile, "**********> Testing for working DMA residual count == 0.\n"); | ||
| 133 | @@ -95,7 +95,7 @@ | ||
| 134 | printf("Ready to start test for working DMA residual count == DMA count? Enter <CR> to continue: "); | ||
| 135 | fprintf(logfile, "**********> Testing for working DMA residual count == DMA count.\n"); | ||
| 136 | flushit(); | ||
| 137 | - (void) getline(abuf, sizeof (abuf)); | ||
| 138 | + (void) getline_schily(abuf, sizeof (abuf)); | ||
| 139 | passed = TRUE; | ||
| 140 | dmacnt = cnt; | ||
| 141 | ret = xtinquiry(scgp, 0, dmacnt); | ||
| 142 | @@ -130,7 +130,7 @@ | ||
| 143 | printf("Ready to start test for working DMA residual count == 1? Enter <CR> to continue: "); | ||
| 144 | fprintf(logfile, "**********> Testing for working DMA residual count == 1.\n"); | ||
| 145 | flushit(); | ||
| 146 | - (void) getline(abuf, sizeof (abuf)); | ||
| 147 | + (void) getline_schily(abuf, sizeof (abuf)); | ||
| 148 | passed = TRUE; | ||
| 149 | dmacnt = cnt+1; | ||
| 150 | ret = xtinquiry(scgp, cnt, dmacnt); | ||
| 151 | Index: cdrtools-2.01/scgcheck/scgcheck.c | ||
| 152 | =================================================================== | ||
| 153 | --- cdrtools-2.01.orig/scgcheck/scgcheck.c 2009-06-18 11:33:59.000000000 +0100 | ||
| 154 | +++ cdrtools-2.01/scgcheck/scgcheck.c 2009-06-18 11:35:31.000000000 +0100 | ||
| 155 | @@ -189,7 +189,7 @@ | ||
| 156 | break; | ||
| 157 | error("Enter SCSI device name for bus scanning [%s]: ", device); | ||
| 158 | flushit(); | ||
| 159 | - (void) getline(device, sizeof (device)); | ||
| 160 | + (void) getline_schily(device, sizeof (device)); | ||
| 161 | if (device[0] == '\0') | ||
| 162 | strcpy(device, "0,6,0"); | ||
| 163 | |||
| 164 | @@ -227,7 +227,7 @@ | ||
| 165 | do { | ||
| 166 | error("Enter SCSI device name [%s]: ", device); | ||
| 167 | flushit(); | ||
| 168 | - (void) getline(device, sizeof (device)); | ||
| 169 | + (void) getline_schily(device, sizeof (device)); | ||
| 170 | if (device[0] == '\0') | ||
| 171 | strcpy(device, "0,6,0"); | ||
| 172 | |||
| 173 | @@ -256,7 +256,7 @@ | ||
| 174 | |||
| 175 | printf("Ready to start test for second SCSI open? Enter <CR> to continue: "); | ||
| 176 | flushit(); | ||
| 177 | - (void) getline(abuf, sizeof (abuf)); | ||
| 178 | + (void) getline_schily(abuf, sizeof (abuf)); | ||
| 179 | #define CHECK_SECOND_OPEN | ||
| 180 | #ifdef CHECK_SECOND_OPEN | ||
| 181 | if (!streql(abuf, "n")) { | ||
| 182 | @@ -344,7 +344,7 @@ | ||
| 183 | |||
| 184 | printf("Ready to start test for succeeded command? Enter <CR> to continue: "); | ||
| 185 | flushit(); | ||
| 186 | - (void) getline(abuf, sizeof (abuf)); | ||
| 187 | + (void) getline_schily(abuf, sizeof (abuf)); | ||
| 188 | scgp->verbose++; | ||
| 189 | ret = inquiry(scgp, buf, sizeof (struct scsi_inquiry)); | ||
| 190 | scg_vsetup(scgp); | ||
| 191 | Index: cdrtools-2.01/scgcheck/sense.c | ||
| 192 | =================================================================== | ||
| 193 | --- cdrtools-2.01.orig/scgcheck/sense.c 2009-06-18 11:33:58.000000000 +0100 | ||
| 194 | +++ cdrtools-2.01/scgcheck/sense.c 2009-06-18 11:35:54.000000000 +0100 | ||
| 195 | @@ -66,7 +66,7 @@ | ||
| 196 | printf("Ready to start test for failing command? Enter <CR> to continue: "); | ||
| 197 | fprintf(logfile, "**********> Testing for failed SCSI command.\n"); | ||
| 198 | flushit(); | ||
| 199 | - (void)getline(abuf, sizeof(abuf)); | ||
| 200 | + (void)getline_schily(abuf, sizeof(abuf)); | ||
| 201 | /* scgp->verbose++;*/ | ||
| 202 | fillbytes(buf, sizeof(struct scsi_inquiry), '\0'); | ||
| 203 | fillbytes((caddr_t)scgp->scmd, sizeof(*scgp->scmd), '\0'); | ||
| 204 | @@ -82,13 +82,13 @@ | ||
| 205 | printf("the test utility. Otherwise remove any medium from the drive.\n"); | ||
| 206 | printf("Ready to start test for failing command? Enter <CR> to continue: "); | ||
| 207 | flushit(); | ||
| 208 | - (void)getline(abuf, sizeof(abuf)); | ||
| 209 | + (void)getline_schily(abuf, sizeof(abuf)); | ||
| 210 | ret = test_unit_ready(scgp); | ||
| 211 | if (ret >= 0 || !scg_cmd_err(scgp)) { | ||
| 212 | printf("Test Unit Ready did not fail.\n"); | ||
| 213 | printf("Ready to eject tray? Enter <CR> to continue: "); | ||
| 214 | flushit(); | ||
| 215 | - (void)getline(abuf, sizeof(abuf)); | ||
| 216 | + (void)getline_schily(abuf, sizeof(abuf)); | ||
| 217 | scsi_unload(scgp, (cdr_t *)0); | ||
| 218 | ret = test_unit_ready(scgp); | ||
| 219 | } | ||
| 220 | @@ -127,7 +127,7 @@ | ||
| 221 | printf("Ready to start test for sense data count? Enter <CR> to continue: "); | ||
| 222 | fprintf(logfile, "**********> Testing for SCSI sense data count.\n"); | ||
| 223 | flushit(); | ||
| 224 | - (void)getline(abuf, sizeof(abuf)); | ||
| 225 | + (void)getline_schily(abuf, sizeof(abuf)); | ||
| 226 | printf("Testing if at least CCS_SENSE_LEN (%d) is supported...\n", CCS_SENSE_LEN); | ||
| 227 | fprintf(logfile, "**********> Testing if at least CCS_SENSE_LEN (%d) is supported...\n", CCS_SENSE_LEN); | ||
| 228 | ret = sensecount(scgp, CCS_SENSE_LEN); | ||
diff --git a/meta/packages/cdrtools/cdrtools-native_2.01.bb b/meta/packages/cdrtools/cdrtools-native_2.01.bb index 4ed91a7f45..6f87b50768 100644 --- a/meta/packages/cdrtools/cdrtools-native_2.01.bb +++ b/meta/packages/cdrtools/cdrtools-native_2.01.bb | |||
| @@ -5,10 +5,11 @@ | |||
| 5 | LICENSE="GPL" | 5 | LICENSE="GPL" |
| 6 | DESCRIPTION="A set of tools for CD recording, including cdrecord" | 6 | DESCRIPTION="A set of tools for CD recording, including cdrecord" |
| 7 | HOMEPAGE="http://cdrecord.berlios.de/old/private/cdrecord.html" | 7 | HOMEPAGE="http://cdrecord.berlios.de/old/private/cdrecord.html" |
| 8 | PR = "r1" | 8 | PR = "r2" |
| 9 | 9 | ||
| 10 | SRC_URI="ftp://ftp.berlios.de/pub/cdrecord/cdrtools-${PV}.tar.bz2 \ | 10 | SRC_URI="ftp://ftp.berlios.de/pub/cdrecord/cdrtools-${PV}.tar.bz2 \ |
| 11 | file://no_usr_src.patch;patch=1" | 11 | file://no_usr_src.patch;patch=1 \ |
| 12 | file://glibc-conflict-rename.patch;patch=1" | ||
| 12 | 13 | ||
| 13 | inherit native | 14 | inherit native |
| 14 | 15 | ||
