Den Monday 15 December 2008 09:25:33 skrev Arnaud Quette: > 2008/12/14 Charles Lepple <clep...@gmail.com>: > > All, > > Hey there, > > as a side note, this point is linked to the "make package" target in NUT > 2.4.0 > > > Arnaud and I were discussing the *.spec files we have in the NUT > > source tree, and with the 2.4.0 release of NUT just around the corner, > > I would like to make sure we are pointing people in the right > > direction for NUT RPMs.
I don't care much about that, sorry. Too much other stuff to maintain (over 1200 src.rpm packages...). > @Oden: btw, what's your situation? I heard about rumors, that I hope > are not true. Yep. It's true. I'm open to some nice job offers (productization stuff). I've been lazy or rather due to workload with submitting patches. So here it comes: nut-openssl_linkage_fix.diff http://wiki.mandriva.com/en/Underlinking nut-2.2.2-format_not_a_string_literal_and_no_format_arguments.diff http://wiki.mandriva.com/en/Development/Packaging/Problems#format_not_a_string_literal_and_no_format_arguments Cheers. -- Regards // Oden Eriksson
diff -Naurp nut-2.2.2/drivers/bcmxcp.c nut-2.2.2.oden/drivers/bcmxcp.c --- nut-2.2.2/drivers/bcmxcp.c 2008-02-01 22:07:25.000000000 +0100 +++ nut-2.2.2.oden/drivers/bcmxcp.c 2008-12-18 10:53:18.000000000 +0100 @@ -894,7 +894,8 @@ void upsdrv_initinfo(void) /* Make a nice model string and tell NUT about it */ snprintfcat(pTmp, len+10, " %dVA", iRating); - dstate_setinfo("ups.model", pTmp); + dstate_setinfo("ups.model", "%s", pTmp); + free(pTmp); /* Display startup banner */ @@ -940,7 +941,7 @@ void upsdrv_initinfo(void) } } - dstate_setinfo("ups.serial", sValue); + dstate_setinfo("ups.serial", "%s", sValue); /* Get information on UPS extended limits */ res = command_read_sequence(PW_LIMIT_BLOCK_REQ, answer); @@ -987,7 +988,7 @@ void upsdrv_updateinfo(void) bcmxcp_meter_map[iIndex].format, sValue); /* Set result */ - dstate_setinfo(bcmxcp_meter_map[iIndex].nut_entity, sValue); + dstate_setinfo(bcmxcp_meter_map[iIndex].nut_entity, "%s", sValue); } } diff -Naurp nut-2.2.2/drivers/bestfcom.c nut-2.2.2.oden/drivers/bestfcom.c --- nut-2.2.2/drivers/bestfcom.c 2008-02-13 03:27:58.000000000 +0100 +++ nut-2.2.2.oden/drivers/bestfcom.c 2008-12-18 10:56:43.000000000 +0100 @@ -193,7 +193,7 @@ static int execute(const char *cmd, char ser_get_line_alert(upsfd, buf, sizeof(buf), '\012', "", POLL_ALERT, alert_handler, 0, 20000); - ser_send(upsfd, cmd); + ser_send(upsfd, "%s", cmd); /* Give the UPS some time to chew on what we just sent */ usleep(50000); diff -Naurp nut-2.2.2/drivers/gamatronic.c nut-2.2.2.oden/drivers/gamatronic.c --- nut-2.2.2/drivers/gamatronic.c 2007-09-08 17:31:37.000000000 +0200 +++ nut-2.2.2.oden/drivers/gamatronic.c 2008-12-18 10:57:15.000000000 +0100 @@ -82,7 +82,7 @@ int sec_cmd(const char mode, const char mode, command); } upsdebugx(1, "PC-->UPS: \"%s\"",msg); - ret = ser_send(upsfd,msg); + ret = ser_send(upsfd, "%s", msg); upsdebugx(1, " send returned: %d",ret); diff -Naurp nut-2.2.2/drivers/libhid.c nut-2.2.2.oden/drivers/libhid.c --- nut-2.2.2/drivers/libhid.c 2008-03-23 21:08:06.000000000 +0100 +++ nut-2.2.2.oden/drivers/libhid.c 2008-12-18 11:02:10.000000000 +0100 @@ -608,7 +608,7 @@ static int string_to_path(const char *st char buf[SMALLBUF]; char *token, *last; - snprintf(buf, sizeof(buf), string); + snprintf(buf, sizeof(buf), "%s", string); for (token = strtok_r(buf, ".", &last); token != NULL; token = strtok_r(NULL, ".", &last)) { diff -Naurp nut-2.2.2/drivers/metasys.c nut-2.2.2.oden/drivers/metasys.c --- nut-2.2.2/drivers/metasys.c 2007-09-28 19:17:47.000000000 +0200 +++ nut-2.2.2.oden/drivers/metasys.c 2008-12-18 10:57:47.000000000 +0100 @@ -535,7 +535,7 @@ void upsdrv_initinfo(void) memcpy(serial, my_answer + 7, res - 7); /* serial number start from the 8th byte */ serial[12]=0; /* terminate string */ - dstate_setinfo("ups.serial", serial); + dstate_setinfo("ups.serial", "%s", serial); /* get the ups firmware. The major number is in the 5th byte, the minor is in the 6th */ dstate_setinfo("ups.firmware", "%u.%u", my_answer[5], my_answer[6]); diff -Naurp nut-2.2.2/drivers/mge-utalk.c nut-2.2.2.oden/drivers/mge-utalk.c --- nut-2.2.2/drivers/mge-utalk.c 2007-09-28 19:17:47.000000000 +0200 +++ nut-2.2.2.oden/drivers/mge-utalk.c 2008-12-18 11:00:38.000000000 +0100 @@ -398,7 +398,7 @@ void upsdrv_updateinfo(void) if ( bytes_rcvd > 0 && buf[0] != '?' ) { extract_info(buf, item, infostr, sizeof(infostr)); - dstate_setinfo(item->type, infostr); + dstate_setinfo(item->type, "%s", infostr); upsdebugx(2, "updateinfo: %s == >%s<", item->type, infostr); dstate_dataok(); } else { diff -Naurp nut-2.2.2/drivers/mge-xml.c nut-2.2.2.oden/drivers/mge-xml.c --- nut-2.2.2/drivers/mge-xml.c 2008-04-14 11:54:37.000000000 +0200 +++ nut-2.2.2.oden/drivers/mge-xml.c 2008-12-18 11:21:28.000000000 +0100 @@ -404,7 +404,7 @@ static char *split_date_time(const char char *last = NULL; snprintf(mge_scratch_buf, sizeof(mge_scratch_buf), "%s", val); - dstate_setinfo("ups.date", strtok_r(mge_scratch_buf, " ", &last)); + dstate_setinfo("ups.date", "%s", strtok_r(mge_scratch_buf, " ", &last)); return strtok_r(NULL, " ", &last); } @@ -839,11 +839,11 @@ static int mge_xml_endelm_cb(void *userd /* Some devices also return the serial number here */ value = strstr(val, " (SN "); if (value) { - dstate_setinfo("ups.serial", rtrim(value + 5, ')')); + dstate_setinfo("ups.serial", "%s", rtrim(value + 5, ')')); value[0] = '\0'; } - dstate_setinfo("ups.firmware.aux", val); + dstate_setinfo("ups.firmware.aux", "%s", val); break; case SU_OBJECT: @@ -862,7 +862,7 @@ static int mge_xml_endelm_cb(void *userd } if (value != NULL) { - dstate_setinfo(info->nutname, value); + dstate_setinfo(info->nutname, "%s", value); } return 0; diff -Naurp nut-2.2.2/drivers/nitram.c nut-2.2.2.oden/drivers/nitram.c --- nut-2.2.2/drivers/nitram.c 2008-02-03 12:30:31.000000000 +0100 +++ nut-2.2.2.oden/drivers/nitram.c 2008-12-18 11:02:32.000000000 +0100 @@ -208,7 +208,7 @@ static int setvar(const char *varname, c snprintf(command, sizeof(command), "C4:%s", val); if (execute_command(command, &reply) == 1) { - dstate_setinfo("battery.charge.low", val); + dstate_setinfo("battery.charge.low", "%s", val); } return STAT_INSTCMD_HANDLED; } diff -Naurp nut-2.2.2/drivers/oneac.c nut-2.2.2.oden/drivers/oneac.c --- nut-2.2.2/drivers/oneac.c 2008-01-29 14:57:20.000000000 +0100 +++ nut-2.2.2.oden/drivers/oneac.c 2008-12-18 11:03:12.000000000 +0100 @@ -101,7 +101,7 @@ void upsdrv_initinfo(void) if(strncmp(buffer,MFGR, sizeof(MFGR))) fatalx(EXIT_FAILURE, "Unable to connect to ONEAC UPS on %s\n",device_path); - dstate_setinfo("ups.mfr", buffer); + dstate_setinfo("ups.mfr", "%s", buffer); dstate_addcmd("test.battery.start"); dstate_addcmd("test.battery.stop"); dstate_addcmd("test.failure.start"); @@ -149,7 +149,7 @@ void upsdrv_initinfo(void) buffer2[i] = '\0'; } - dstate_setinfo("ups.model", buffer2); + dstate_setinfo("ups.model", "%s", buffer2); printf("Found %.10s UPS\n", buffer2); } diff -Naurp nut-2.2.2/drivers/optiups.c nut-2.2.2.oden/drivers/optiups.c --- nut-2.2.2/drivers/optiups.c 2007-05-26 16:24:26.000000000 +0200 +++ nut-2.2.2.oden/drivers/optiups.c 2008-12-18 11:05:03.000000000 +0100 @@ -155,7 +155,7 @@ static inline int optireadline() static inline int optiquery( const char *cmd ) { upsdebugx(2, "SEND: \"%s\"", cmd ); - ser_send( upsfd, cmd ); + ser_send(upsfd, "%s", cmd); if ( optimodel == OPTIMODEL_ZINTO ) ser_send( upsfd, "\r\n" ); return optireadline(); @@ -195,7 +195,7 @@ static void optifill( ezfill_t *a, int l } else { - dstate_setinfo( a[i].var, _buf); + dstate_setinfo( a[i].var, "%s", _buf); } } } diff -Naurp nut-2.2.2/drivers/powerp-bin.c nut-2.2.2.oden/drivers/powerp-bin.c --- nut-2.2.2/drivers/powerp-bin.c 2008-03-08 22:02:27.000000000 +0100 +++ nut-2.2.2.oden/drivers/powerp-bin.c 2008-12-18 11:11:09.000000000 +0100 @@ -276,7 +276,7 @@ static int powpan_setvar(const char *var vartab[type][i].map[j].command); if ((powpan_command(command, 4) == 3) && (!memcmp(powpan_answer, command, 3))) { - dstate_setinfo(varname, val); + dstate_setinfo(varname, "%s", val); return STAT_SET_HANDLED; } @@ -330,7 +330,7 @@ static void powpan_initinfo() continue; } - dstate_setinfo(vartab[type][i].var, vartab[type][i].map[j].val); + dstate_setinfo(vartab[type][i].var, "%s", vartab[type][i].map[j].val); break; } @@ -343,7 +343,7 @@ static void powpan_initinfo() dstate_setflags(vartab[type][i].var, ST_FLAG_RW); for (j = 0; vartab[type][i].map[j].val != 0; j++) { - dstate_addenum(vartab[type][i].var, vartab[type][i].map[j].val); + dstate_addenum(vartab[type][i].var, "%s", vartab[type][i].map[j].val); } } diff -Naurp nut-2.2.2/drivers/powerp-txt.c nut-2.2.2.oden/drivers/powerp-txt.c --- nut-2.2.2/drivers/powerp-txt.c 2008-03-08 22:02:27.000000000 +0100 +++ nut-2.2.2.oden/drivers/powerp-txt.c 2008-12-18 11:14:31.000000000 +0100 @@ -85,7 +85,7 @@ static int powpan_command(const char *co upsdebug_hex(3, "send", (unsigned char *)command, strlen(command)); - ret = ser_send_pace(upsfd, UPSDELAY, command); + ret = ser_send_pace(upsfd, UPSDELAY, "%s", command); if (ret < (int)strlen(command)) { return -1; @@ -160,7 +160,7 @@ static int powpan_setvar(const char *var snprintf(command, sizeof(command), vartab[i].set, atoi(val)); if ((powpan_command(command) == 2) && (!strcasecmp(powpan_answer, "#0"))) { - dstate_setinfo(varname, val); + dstate_setinfo(varname, "%s", val); return STAT_SET_HANDLED; } @@ -185,10 +185,10 @@ static void powpan_initinfo() dstate_setinfo("ups.model", "%s", rtrim(s, ' ')); } if ((s = strtok(NULL, ",")) != NULL) { - dstate_setinfo("ups.firmware", s); + dstate_setinfo("ups.firmware", "%s", s); } if ((s = strtok(NULL, ",")) != NULL) { - dstate_setinfo("ups.serial", s); + dstate_setinfo("ups.serial", "%s", s); } if ((s = strtok(NULL, ",")) != NULL) { dstate_setinfo("ups.mfr", "%s", rtrim(s, ' ')); diff -Naurp nut-2.2.2/drivers/powerpanel.c nut-2.2.2.oden/drivers/powerpanel.c --- nut-2.2.2/drivers/powerpanel.c 2008-03-08 22:02:27.000000000 +0100 +++ nut-2.2.2.oden/drivers/powerpanel.c 2008-12-18 11:09:53.000000000 +0100 @@ -62,13 +62,13 @@ void upsdrv_initinfo(void) * Allow to override the following parameters */ if ((s = getval("manufacturer")) != NULL) { - dstate_setinfo("ups.mfr", s); + dstate_setinfo("ups.mfr", "%s", s); } if ((s = getval("model")) != NULL) { - dstate_setinfo("ups.model", s); + dstate_setinfo("ups.model", "%s", s); } if ((s = getval("serial")) != NULL) { - dstate_setinfo("ups.serial", s); + dstate_setinfo("ups.serial", "%s", s); } } diff -Naurp nut-2.2.2/drivers/safenet.c nut-2.2.2.oden/drivers/safenet.c --- nut-2.2.2/drivers/safenet.c 2007-09-28 19:17:47.000000000 +0200 +++ nut-2.2.2.oden/drivers/safenet.c 2008-12-18 11:05:49.000000000 +0100 @@ -94,7 +94,7 @@ static int safenet_command(const char *c * Send the command and read back the status line. When we just send * a status polling command, it will return the actual status. */ - ser_send_pace(upsfd, 10000, command); + ser_send_pace(upsfd, "%s", 10000, command); upsdebugx(3, "UPS command %s", command); /* diff -Naurp nut-2.2.2/drivers/snmp-ups.c nut-2.2.2.oden/drivers/snmp-ups.c --- nut-2.2.2/drivers/snmp-ups.c 2008-01-18 17:16:10.000000000 +0100 +++ nut-2.2.2.oden/drivers/snmp-ups.c 2008-12-18 11:15:39.000000000 +0100 @@ -72,7 +72,7 @@ void upsdrv_initinfo(void) snprintf(version, sizeof version, "%s (mib: %s %s)", DRIVER_VERSION, mibname, mibvers); - dstate_setinfo("driver.version.internal", version); + dstate_setinfo("driver.version.internal", "%s", version); /* add instant commands to the info database. */ for (su_info_p = &snmp_info[0]; su_info_p->info_type != NULL ; su_info_p++) @@ -517,7 +517,7 @@ void su_setinfo(const char *type, const return; if (strcasecmp(type, "ups.status")) { - dstate_setinfo(type, value); + dstate_setinfo(type, "%s", value); dstate_setflags(type, flags); dstate_setaux(type, auxdata); } diff -Naurp nut-2.2.2/drivers/solis.c nut-2.2.2.oden/drivers/solis.c --- nut-2.2.2/drivers/solis.c 2007-09-28 19:17:47.000000000 +0200 +++ nut-2.2.2.oden/drivers/solis.c 2008-12-18 11:06:17.000000000 +0100 @@ -865,7 +865,7 @@ static void getbaseinfo(void) /* dummy read attempt to sync - throw it out */ snprintf(mycmd, sizeof(mycmd), "%c%c",CMD_UPSCONT, ENDCHAR); - ser_send(upsfd, mycmd); + ser_send(upsfd, "%s", mycmd); /* trying detect solis model */ while ( ( !detected ) && ( j < 20 ) ) { diff -Naurp nut-2.2.2/drivers/tripplite.c nut-2.2.2.oden/drivers/tripplite.c --- nut-2.2.2/drivers/tripplite.c 2007-05-26 16:24:26.000000000 +0200 +++ nut-2.2.2.oden/drivers/tripplite.c 2008-12-18 11:08:12.000000000 +0100 @@ -163,7 +163,7 @@ static int send_cmd(const char *str, cha int ret; size_t i = 0; - ser_send(upsfd, str); + ser_send(upsfd, "%s", str); if (!len || !buf) return -1; @@ -278,17 +278,17 @@ static int setvar(const char *varname, c { if (!strcasecmp(varname, "ups.delay.shutdown")) { offdelay = atoi(val); - dstate_setinfo("ups.delay.shutdown", val); + dstate_setinfo("ups.delay.shutdown", "%s", val); return STAT_SET_HANDLED; } if (!strcasecmp(varname, "ups.delay.start")) { startdelay = atoi(val); - dstate_setinfo("ups.delay.start", val); + dstate_setinfo("ups.delay.start", "%s", val); return STAT_SET_HANDLED; } if (!strcasecmp(varname, "ups.delay.reboot")) { bootdelay = atoi(val); - dstate_setinfo("ups.delay.reboot", val); + dstate_setinfo("ups.delay.reboot", "%s", val); return STAT_SET_HANDLED; } return STAT_SET_UNKNOWN; @@ -328,15 +328,15 @@ void upsdrv_initinfo(void) 'A'+v_value[0]-'0', 'A'+v_value[1]-'0'); snprintf(buf, sizeof buf, "%d", offdelay); - dstate_setinfo("ups.delay.shutdown", buf); + dstate_setinfo("ups.delay.shutdown", "%s", buf); dstate_setflags("ups.delay.shutdown", ST_FLAG_RW | ST_FLAG_STRING); dstate_setaux("ups.delay.shutdown", 3); snprintf(buf, sizeof buf, "%d", startdelay); - dstate_setinfo("ups.delay.start", buf); + dstate_setinfo("ups.delay.start", "%s", buf); dstate_setflags("ups.delay.start", ST_FLAG_RW | ST_FLAG_STRING); dstate_setaux("ups.delay.start", 8); snprintf(buf, sizeof buf, "%d", bootdelay); - dstate_setinfo("ups.delay.reboot", buf); + dstate_setinfo("ups.delay.reboot", "%s", buf); dstate_setflags("ups.delay.reboot", ST_FLAG_RW | ST_FLAG_STRING); dstate_setaux("ups.delay.reboot", 3); diff -Naurp nut-2.2.2/drivers/tripplite_usb.c nut-2.2.2.oden/drivers/tripplite_usb.c --- nut-2.2.2/drivers/tripplite_usb.c 2007-09-28 19:17:47.000000000 +0200 +++ nut-2.2.2.oden/drivers/tripplite_usb.c 2008-12-18 11:18:58.000000000 +0100 @@ -799,7 +799,7 @@ static int setvar(const char *varname, c { if (!strcasecmp(varname, "ups.delay.shutdown")) { offdelay = atoi(val); - dstate_setinfo("ups.delay.shutdown", val); + dstate_setinfo("ups.delay.shutdown", "%s", val); return STAT_SET_HANDLED; } @@ -884,11 +884,11 @@ void upsdrv_initinfo(void) tl_model = decode_protocol(proto_number); if(tl_model == TRIPP_LITE_UNKNOWN) - dstate_setinfo("ups.debug.0", hexascdump(proto_value+1, 7)); + dstate_setinfo("ups.debug.0", "%s", hexascdump(proto_value+1, 7)); snprintf(proto_string, sizeof(proto_string), "protocol %04x", proto_number); - dstate_setinfo("ups.firmware.aux", proto_string); + dstate_setinfo("ups.firmware.aux", "%s", proto_string); /* - * - * - * - * - * - * - * - * - * - * - * - * - * - * - */ @@ -921,7 +921,7 @@ void upsdrv_initinfo(void) *model_end = '\0'; } - dstate_setinfo("ups.model", model); + dstate_setinfo("ups.model", "%s", model); dstate_setinfo("ups.power.nominal", "%d", va); @@ -1004,18 +1004,18 @@ void upsdrv_initinfo(void) dstate_setinfo("ups.debug.load_banks", "%d", switchable_load_banks); snprintf(buf, sizeof buf, "%d", offdelay); - dstate_setinfo("ups.delay.shutdown", buf); + dstate_setinfo("ups.delay.shutdown", "%s", buf); dstate_setflags("ups.delay.shutdown", ST_FLAG_RW | ST_FLAG_STRING); dstate_setaux("ups.delay.shutdown", 3); #if 0 snprintf(buf, sizeof buf, "%d", startdelay); - dstate_setinfo("ups.delay.start", buf); + dstate_setinfo("ups.delay.start", "%s", buf); dstate_setflags("ups.delay.start", ST_FLAG_RW | ST_FLAG_STRING); dstate_setaux("ups.delay.start", 8); snprintf(buf, sizeof buf, "%d", bootdelay); - dstate_setinfo("ups.delay.reboot", buf); + dstate_setinfo("ups.delay.reboot", "%s", buf); dstate_setflags("ups.delay.reboot", ST_FLAG_RW | ST_FLAG_STRING); dstate_setaux("ups.delay.reboot", 3); #endif diff -Naurp nut-2.2.2/drivers/upscode2.c nut-2.2.2.oden/drivers/upscode2.c --- nut-2.2.2/drivers/upscode2.c 2007-09-28 19:17:47.000000000 +0200 +++ nut-2.2.2.oden/drivers/upscode2.c 2008-12-18 11:09:21.000000000 +0100 @@ -1252,7 +1252,7 @@ static int upsc_simple(const simple_t *s if (stat != 1) upslogx(LOG_ERR, "Bad float: %s %s", var, val); if (sp->desc) - dstate_setinfo(sp->desc, val); + dstate_setinfo(sp->desc, "%s", val); *sp->aux = 1/fval; break; case t_setpct: @@ -1261,7 +1261,7 @@ static int upsc_simple(const simple_t *s upslogx(LOG_ERR, "Bad float: %s %s", var, val); *sp->aux = fval*100; if (sp->desc) - dstate_setinfo(sp->desc, val); + dstate_setinfo(sp->desc, "%s", val); break; case t_setrecpct: stat = sscanf(val, "%f", &fval); @@ -1269,7 +1269,7 @@ static int upsc_simple(const simple_t *s upslogx(LOG_ERR, "Bad float: %s %s", var, val); *sp->aux = 1/fval*100; if (sp->desc) - dstate_setinfo(sp->desc, val); + dstate_setinfo(sp->desc, "%s", val); break; case t_final: buffer_empty = 1; @@ -1285,7 +1285,7 @@ static int upsc_simple(const simple_t *s } else { upslogx(LOG_ERR, "Bad float in %s: %s", var, val); - dstate_setinfo(sp->desc, val); + dstate_setinfo(sp->desc, "%s", val); } break; case t_finstr: diff -Naurp nut-2.2.2/drivers/usbhid-ups.c nut-2.2.2.oden/drivers/usbhid-ups.c --- nut-2.2.2/drivers/usbhid-ups.c 2008-04-22 20:04:43.000000000 +0200 +++ nut-2.2.2.oden/drivers/usbhid-ups.c 2008-12-18 11:01:36.000000000 +0100 @@ -932,11 +932,11 @@ void upsdrv_initups(void) /* Retrieve user defined delay settings */ if (dstate_getinfo("ups.delay.start") && (val = getval(HU_VAR_ONDELAY))) { - dstate_setinfo("ups.delay.start", val); + dstate_setinfo("ups.delay.start", "%s", val); } if (dstate_getinfo("ups.delay.shutdown") && (val = getval(HU_VAR_OFFDELAY))) { - dstate_setinfo("ups.delay.start", val); + dstate_setinfo("ups.delay.start", "%s", val); } } @@ -1246,7 +1246,7 @@ static bool_t hid_ups_walk(walkmode_t mo if (dstate_getinfo(item->info_type)) continue; - dstate_setinfo(item->info_type, item->dfl); + dstate_setinfo(item->info_type, "%s", item->dfl); dstate_setflags(item->info_type, item->info_flags); /* Set max length for strings, if needed */
--- clients/Makefile.am 2008-05-05 08:19:42.000000000 -0400 +++ clients/Makefile.am.oden 2008-05-24 09:06:53.000000000 -0400 @@ -46,7 +46,7 @@ # not LDADD. libupsclient_la_SOURCES = upsclient.c upsclient.h -libupsclient_la_LIBADD = ../common/parseconf.lo +libupsclient_la_LIBADD = ../common/parseconf.lo $(LIBSSL_LDFLAGS) libupsclient_la_LDFLAGS = -version-info 1:0:0 # rules for cross-directory targets
_______________________________________________ Nut-upsdev mailing list Nut-upsdev@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/nut-upsdev