summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbustico2014-12-23 09:35:46 +0000
committerbustico2014-12-23 09:35:46 +0000
commit2d66c27090d6654bbda21f7cc8351b9a64f9b4f9 (patch)
treecc60f48c22011cd150c13ed9a7133b0ee937affc
parent538b53a4a610b3a9cf24c3108ab14cf36377a532 (diff)
downloadivy-c-2d66c27090d6654bbda21f7cc8351b9a64f9b4f9.zip
ivy-c-2d66c27090d6654bbda21f7cc8351b9a64f9b4f9.tar.gz
ivy-c-2d66c27090d6654bbda21f7cc8351b9a64f9b4f9.tar.bz2
ivy-c-2d66c27090d6654bbda21f7cc8351b9a64f9b4f9.tar.xz
Author: Piotr Esden-Tempski <piotr@esden.net>
Date: Mon Dec 22 18:54:08 2014 -0800 Added toplevel README.md file. Author: Piotr Esden-Tempski <piotr@esden.net> Date: Mon Dec 22 18:38:50 2014 -0800 Added missing LIB variable for Makefile.osx Date: Mon Dec 22 18:30:20 2014 -0800 Bumped version. Author: Piotr Esden-Tempski <piotr@esden.net> Date: Mon Dec 22 18:15:14 2014 -0800 Switched from explicit naming of *.pc files to wildcard. Author: Piotr Esden-Tempski <piotr@esden.net> Date: Mon Dec 22 18:06:52 2014 -0800 A bunch of pkg-config file improvements. - Automatically finding *.pc.in files and running pattern replacements on them. - Replaced static paths in ivy.pc.in with @@ patterns. - Removed @DESTDIR@ as this path should not appear in any of the installed files, it is only used to direct the build system where to put the files. See deb package build process. - Moved LIB variables to Libs and INC to Cflags. - pkgconfiginstall target now depends on pkgconfig target. Otherwise the *.pc files might not be generated when make install is invoked. - Added missing MAJOR and MINOR variable definitions in Makefile.osx. Author: Piotr Esden-Tempski <piotr@esden.net> Date: Mon Dec 22 17:23:54 2014 -0800 Updated the ivy pkgconfig to use the same patterns as the glib one. Author: Felix Ruess <felix.ruess@gmail.com> Date: Fri Nov 14 15:06:18 2014 +0100 add pkg-config file for ivy Author: Piotr Esden-Tempski <piotr@esden.net> Date: Mon Dec 22 03:48:57 2014 -0800 Fixing the format security warning. The warning is a valid security issue, allowing for access to memory regions not intended for public use. For reference please see: https://fedoraproject.org/wiki/Format-Security-FAQ
-rw-r--r--src/Makefile15
-rw-r--r--src/Makefile.osx34
-rw-r--r--src/ivy-glib.pc.in6
-rw-r--r--src/version.h2
-rw-r--r--tools/ivyprobe.c37
-rw-r--r--tools/ivythroughput.cpp37
6 files changed, 49 insertions, 82 deletions
diff --git a/src/Makefile b/src/Makefile
index a2b8298..193ffc8 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -17,7 +17,7 @@
# change this in version.h too !!!!
MAJOR=3
-MINOR=14
+MINOR=15
PERHAPS64 := $(shell getconf LONG_BIT | perl -ne "print /64/ ? '64' : '';")
LIB = /lib$(PERHAPS64)
@@ -241,8 +241,7 @@ libtclivy.so.$(MAJOR).$(MINOR): $(TCLOBJ)
distclean: clean
clean:
- -rm -f $(TARGETS) $(TARGETLIBS) *.o *.a *.so *.so.* *~
- -rm -f ivy-glib.pc
+ -rm -f $(TARGETS) $(TARGETLIBS) *.o *.a *.so *.so.* *~ *.pc
@(cd $(TOOLS_DIR) && $(MAKE) clean)
@@ -331,9 +330,11 @@ tools_omp: libomp
rpm::
/usr/bin/rpmize
-pkgconf:
- sed -e 's,@PREFIX@,$(PREFIX),; s,@DESTDIR@,$(DESTDIR),; s,@MAJOR@,$(MAJOR),; s,@MINOR@,$(MINOR),; s,@PCREINC@,$(PCREINC),; s,@REGEXP@,$(REGEXP),; s,@PCRELIB@,$(PCRELIB),; s,@EXTRALIB@,$(EXTRALIB),' ivy-glib.pc.in > ivy-glib.pc
+pkgconf:
+ for f in *.pc.in ; do \
+ sed -e 's,@PREFIX@,$(PREFIX),; s,@MAJOR@,$(MAJOR),; s,@MINOR@,$(MINOR),; s,@PCREINC@,$(PCREINC),; s,@REGEXP@,$(REGEXP),; s,@PCRELIB@,$(PCRELIB),; s,@EXTRALIB@,$(EXTRALIB),' $$f > $$(echo $$f | cut -f 1,2 -d .); \
+ done
-installpkgconf:
+installpkgconf: pkgconf
test -d $(DESTDIR)$(PREFIX)/lib/pkgconfig || mkdir -p $(DESTDIR)$(PREFIX)/lib/pkgconfig
- install -m 644 ivy-glib.pc $(DESTDIR)$(PREFIX)/lib/pkgconfig
+ install -m 644 *.pc $(DESTDIR)$(PREFIX)/lib/pkgconfig
diff --git a/src/Makefile.osx b/src/Makefile.osx
index 974fb94..7e4aad6 100644
--- a/src/Makefile.osx
+++ b/src/Makefile.osx
@@ -1,3 +1,26 @@
+#
+# Ivy, C interface
+#
+# Copyright (C) 1997-2014
+# Centre d'Études de la Navigation Aérienne
+#
+# Makefile.osx
+#
+# Authors: François-Régis Colin <fcolin@cena.fr>
+# Stéphane Chatty <chatty@cena.fr>
+# Yannick Jestin <jestin@cena.fr>
+# Piotr Esden-Tempski <piotr@esden.net>
+#
+# Please refer to file version.h for the
+# copyright notice regarding this software
+#
+
+# change this in version.h too !!!!
+MAJOR=3
+MINOR=15
+
+LIB=/lib
+
LBITS := $(shell getconf LONG_BIT)
ifeq ($(LBITS),64)
FPIC = -fPIC
@@ -148,15 +171,16 @@ install: installlibs installbins includes installpkgconf
# ------------------------------------------------------------------------------------------
clean:
- -rm -f *.o *.a *.dylib *.dylib.* *~
- -rm -f ivy-glib.pc
+ -rm -f *.o *.a *.dylib *.dylib.* *~ *.pc
@(cd $(TOOLS_DIR) && $(MAKE) -f Makefile.osx clean)
# ------------------------------------------------------------------------------------------
pkgconf:
- sed -e 's,@PREFIX@,$(PREFIX),; s,@DESTDIR@,$(DESTDIR),; s,@MAJOR@,$(MAJOR),; s,@MINOR@,$(MINOR),; s,@PCREINC@,$(PCREINC),; s,@REGEXP@,$(REGEXP),; s,@PCRELIB@,$(PCRELIB),; s,@EXTRALIB@,$(EXTRALIB),' ivy-glib.pc.in > ivy-glib.pc
+ for f in *.pc.in ; do \
+ sed -e 's,@PREFIX@,$(PREFIX),; s,@MAJOR@,$(MAJOR),; s,@MINOR@,$(MINOR),; s,@PCREINC@,$(PCREINC),; s,@REGEXP@,$(REGEXP),; s,@PCRELIB@,$(PCRELIB),; s,@EXTRALIB@,$(EXTRALIB),' $$f > $$(echo $$f | cut -f 1,2 -d .); \
+ done
-installpkgconf:
+installpkgconf: pkgconf
test -d $(DESTDIR)$(PREFIX)/lib/pkgconfig || mkdir -p $(DESTDIR)$(PREFIX)/lib/pkgconfig
- install -m 644 ivy-glib.pc $(DESTDIR)$(PREFIX)/lib/pkgconfig
+ install -m 644 *.pc $(DESTDIR)$(PREFIX)/lib/pkgconfig
diff --git a/src/ivy-glib.pc.in b/src/ivy-glib.pc.in
index e2186a9..5794064 100644
--- a/src/ivy-glib.pc.in
+++ b/src/ivy-glib.pc.in
@@ -1,4 +1,4 @@
-prefix=@DESTDIR@/@PREFIX@
+prefix=@PREFIX@
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
@@ -7,5 +7,5 @@ Name: ivy-glib
Description: A software bus (Glib main loop)
Requires: glib-2.0
Version: @MAJOR@.@MINOR@
-Libs: -L${libdir} -lglibivy @PCREINC@
-Cflags: -I${includedir} @REGEXP@ @PCRELIB@ @EXTRALIB@
+Libs: -L${libdir} -lglibivy @PCRELIB@ @EXTRALIB@
+Cflags: -I${includedir} @REGEXP@ @PCREINC@
diff --git a/src/version.h b/src/version.h
index a75a7fa..11548f7 100644
--- a/src/version.h
+++ b/src/version.h
@@ -26,4 +26,4 @@
*
*/
#define IVYMAJOR_VERSION 3
-#define IVYMINOR_VERSION 14
+#define IVYMINOR_VERSION 15
diff --git a/tools/ivyprobe.c b/tools/ivyprobe.c
index 8b164a1..0074192 100644
--- a/tools/ivyprobe.c
+++ b/tools/ivyprobe.c
@@ -171,15 +171,7 @@ void HandleStdin (Channel channel, IVY_HANDLE fd, void *data)
printf("Error compiling '%s', %s, not bound\n", arg, errbuf);
} else {
IvyBindingFree( binding );
-
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-security"
-#endif
- IvyBindMsg (Callback, NULL, arg);
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic pop
-#endif
+ IvyBindMsg (Callback, NULL, "%s", arg);
}
}
@@ -243,14 +235,7 @@ void HandleStdin (Channel channel, IVY_HANDLE fd, void *data)
}
} else {
cmd = strtok (buf, "\n");
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-security"
-#endif
- err = IvySendMsg (cmd);
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic pop
-#endif
+ err = IvySendMsg ("%s", cmd);
printf("-> Sent to %d peer%s\n", err, err == 1 ? "" : "s");
}
}
@@ -355,14 +340,7 @@ void BindMsgOfFile( const char * regex_file )
if ( size > 1 )
{
line[size-1] = '\0'; /* supress \n */
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-security"
-#endif
- IvyBindMsg (Callback, NULL, line);
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic pop
-#endif
+ IvyBindMsg (Callback, NULL, "%s", line);
}
}
}
@@ -455,14 +433,7 @@ int main(int argc, char *argv[])
for (; optind < argc; optind++)
{
printf("Binding to '%s'\n", argv[optind] );
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-security"
-#endif
- IvyBindMsg (Callback, NULL, argv[optind]);
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic pop
-#endif
+ IvyBindMsg (Callback, NULL, "%s", argv[optind]);
}
diff --git a/tools/ivythroughput.cpp b/tools/ivythroughput.cpp
index 68543e9..6773892 100644
--- a/tools/ivythroughput.cpp
+++ b/tools/ivythroughput.cpp
@@ -281,10 +281,6 @@ void emetteur (const char* bus, KindOfTest kod, int testDuration,
# | | | __/ | (__ | __/ | | \ |_ | __/ | |_| | | |
# |_| \___| \___| \___| |_| \__| \___| \__,_| |_|
*/
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-security"
-#endif
void recepteur_tp (const char* bus, KindOfTest kod, unsigned int inst,
const ListOfString& regexps, unsigned int exitAfter)
{
@@ -305,7 +301,7 @@ void recepteur_tp (const char* bus, KindOfTest kod, unsigned int inst,
debugInt++;
string reg = *iter;
if (regexpAreUniq) { ((reg += "(") += stream.str()) += ")?";}
- IvyBindMsg (recepteurCB, (void *) long(inst), reg.c_str());
+ IvyBindMsg (recepteurCB, (void *) long(inst), "%s", reg.c_str());
}
IvyBindMsg (startOfSeqCB, NULL, "^start(OfSequence)");
IvyBindMsg (endOfSeqCB, NULL, "^end(OfSequence)");
@@ -320,9 +316,6 @@ void recepteur_tp (const char* bus, KindOfTest kod, unsigned int inst,
IvyStart (bus);
IvyMainLoop ();
}
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic pop
-#endif
void recepteur_ml (const char* bus, KindOfTest kod, unsigned int inst,
const ListOfString& regexps)
@@ -346,15 +339,7 @@ void recepteur_ml (const char* bus, KindOfTest kod, unsigned int inst,
debugInt++;
string reg = *iter;
if (regexpAreUniq) { (reg += " ") += stream.str();}
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-security"
-#endif
- bindIdList.push_back (IvyBindMsg (recepteurCB, (void *) long(inst), reg.c_str()));
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic pop
-#endif
-
+ bindIdList.push_back (IvyBindMsg (recepteurCB, (void *) long(inst), "%s", reg.c_str()));
}
IvyBindMsg (startOfSeqCB, NULL, "^start(OfSequence)");
IvyBindMsg (endOfSeqCB, NULL, "^end(OfSequence)");
@@ -555,14 +540,7 @@ void sendAllMessageCB (TimerId id, void *user_data, unsigned long delta)
IvySendMsg ("startOfSequence");
ListOfString::iterator iter;
for (iter=messages->begin(); iter != messages->end(); iter++) {
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-security"
-#endif
- envoyes += IvySendMsg ((*iter).c_str());
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic pop
-#endif
+ envoyes += IvySendMsg ("%s", (*iter).c_str());
}
IvySendMsg ("endOfSequence");
@@ -641,15 +619,8 @@ void desabonneEtReabonneCB (TimerId id, void *user_data, unsigned long delta)
ListOfString::const_iterator iter2;
for (iter2=mds->regexps->begin(); iter2 != mds->regexps->end(); iter2++) {
string reg = *iter2;
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wformat-security"
-#endif
mds->bindIdList->push_back (IvyBindMsg (recepteurCB, (void *) long(mds->inst),
- reg.c_str()));
-#if defined(__GNUC__) && __GNUC_PREREQ(4,7)
-#pragma GCC diagnostic pop
-#endif
+ "%s", reg.c_str()));
}
// CHANGE REGEXP