Re: [Qemu-devel] [RFC PATCH] Darwin: Fix compilation warning regarding the deprecated daemon() function

2011-06-04 Thread Blue Swirl
On Thu, Jun 2, 2011 at 5:45 AM, Alexandre Raymond  wrote:
> On OSX > 10.5, daemon() is deprecated, resulting int he following warning:
> 8<
> qemu-nbd.c: In function ‘main’:
> qemu-nbd.c:371: warning: ‘daemon’ is deprecated (declared at 
> /usr/include/stdlib.h:289)
> 8<
>
> The following trick, used in mDNSResponder, takes care of this warning:
> http://www.opensource.apple.com/source/mDNSResponder/mDNSResponder-258.18/mDNSPosix/PosixDaemon.c
>
> Signed-off-by: Alexandre Raymond 
> ---
>  qemu-nbd.c |    9 +
>  1 files changed, 9 insertions(+), 0 deletions(-)
>
> diff --git a/qemu-nbd.c b/qemu-nbd.c
> index e858033..10b0791 100644
> --- a/qemu-nbd.c
> +++ b/qemu-nbd.c
> @@ -16,6 +16,10 @@
>  *  along with this program; if not, see .
>  */
>
> +#if __APPLE__
> +#define daemon fake_daemon_function
> +#endif
> +
>  #include 
>  #include "block_int.h"
>  #include "nbd.h"
> @@ -32,6 +36,11 @@
>  #include 
>  #include 
>
> +#if __APPLE__
> +#undef daemon
> +extern int daemon(int, int);
> +#endif
> +

Please introduce a wrapper instead, for example in oslib-posix.c. Then
the #ifdeffery is not spread to generic files.



Re: [Qemu-devel] [RFC PATCH] Darwin: Fix compilation warning regarding the deprecated daemon() function

2011-06-02 Thread Alexandre Raymond
Hi Andreas,

On Thu, Jun 2, 2011 at 8:09 AM, Andreas Färber  wrote:
> Am 02.06.2011 um 04:45 schrieb Alexandre Raymond:
>
>> On OSX > 10.5, daemon() is deprecated, resulting int he following warning:
>
>>= 10.5
>
> http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/daemon.3.html
>
>> 8<
>> qemu-nbd.c: In function ‘main’:
>> qemu-nbd.c:371: warning: ‘daemon’ is deprecated (declared at
>> /usr/include/stdlib.h:289)
>> 8<
>>
>> The following trick, used in mDNSResponder, takes care of this warning:
>>
>> http://www.opensource.apple.com/source/mDNSResponder/mDNSResponder-258.18/mDNSPosix/PosixDaemon.c
>
> Even if apparently applied by Apple themselves, I consider it a bad hack for
> curing symptoms.
>
> http://developer.apple.com/library/mac/technotes/tn2083/_index.html#//apple_ref/doc/uid/DTS10003794-CH1-SUBSECTION64

I agree that this is a nasty hack. It's really up to you guys. I can
try to modify this patch to use launchd instead.

Alexandre



Re: [Qemu-devel] [RFC PATCH] Darwin: Fix compilation warning regarding the deprecated daemon() function

2011-06-02 Thread Peter Maydell
On 2 June 2011 03:45, Alexandre Raymond  wrote:

> The following trick, used in mDNSResponder, takes care of this warning:
> http://www.opensource.apple.com/source/mDNSResponder/mDNSResponder-258.18/mDNSPosix/PosixDaemon.c

If we do decide to borrow this trick from there, can we
also borrow some equivalent of the comment which explains
why we're doing it?

-- PMM



Re: [Qemu-devel] [RFC PATCH] Darwin: Fix compilation warning regarding the deprecated daemon() function

2011-06-02 Thread Andreas Färber

Am 02.06.2011 um 04:45 schrieb Alexandre Raymond:

On OSX > 10.5, daemon() is deprecated, resulting int he following  
warning:


>= 10.5

http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ 
ManPages/man3/daemon.3.html



8<
qemu-nbd.c: In function ‘main’:
qemu-nbd.c:371: warning: ‘daemon’ is deprecated (declared at /usr/ 
include/stdlib.h:289)

8<

The following trick, used in mDNSResponder, takes care of this  
warning:

http://www.opensource.apple.com/source/mDNSResponder/mDNSResponder-258.18/mDNSPosix/PosixDaemon.c


Even if apparently applied by Apple themselves, I consider it a bad  
hack for curing symptoms.


http://developer.apple.com/library/mac/technotes/tn2083/_index.html#// 
apple_ref/doc/uid/DTS10003794-CH1-SUBSECTION64


Possibly a better fix would be to supply a .plist file for use with  
launchd/launchctl and to #ifndef __APPLE__ the daemon() functionality?


Further comments inline.


Signed-off-by: Alexandre Raymond 
---
qemu-nbd.c |9 +
1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/qemu-nbd.c b/qemu-nbd.c
index e858033..10b0791 100644
--- a/qemu-nbd.c
+++ b/qemu-nbd.c
@@ -16,6 +16,10 @@
 *  along with this program; if not, see .

 */

+#if __APPLE__


#ifdef __APPLE__


+#define daemon fake_daemon_function
+#endif
+
#include 
#include "block_int.h"
#include "nbd.h"
@@ -32,6 +36,11 @@
#include 
#include 

+#if __APPLE__


dito


+#undef daemon
+extern int daemon(int, int);


Blue Swirl has declared war on "extern"... ;)


+#endif
+
#define SOCKET_PATH"/var/lock/qemu-nbd-%s"

#define NBD_BUFFER_SIZE (1024*1024)
--
1.7.5


Andreas


[Qemu-devel] [RFC PATCH] Darwin: Fix compilation warning regarding the deprecated daemon() function

2011-06-01 Thread Alexandre Raymond
On OSX > 10.5, daemon() is deprecated, resulting int he following warning:
8<
qemu-nbd.c: In function ‘main’:
qemu-nbd.c:371: warning: ‘daemon’ is deprecated (declared at 
/usr/include/stdlib.h:289)
8<

The following trick, used in mDNSResponder, takes care of this warning:
http://www.opensource.apple.com/source/mDNSResponder/mDNSResponder-258.18/mDNSPosix/PosixDaemon.c

Signed-off-by: Alexandre Raymond 
---
 qemu-nbd.c |9 +
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/qemu-nbd.c b/qemu-nbd.c
index e858033..10b0791 100644
--- a/qemu-nbd.c
+++ b/qemu-nbd.c
@@ -16,6 +16,10 @@
  *  along with this program; if not, see .
  */
 
+#if __APPLE__
+#define daemon fake_daemon_function
+#endif
+
 #include 
 #include "block_int.h"
 #include "nbd.h"
@@ -32,6 +36,11 @@
 #include 
 #include 
 
+#if __APPLE__
+#undef daemon
+extern int daemon(int, int);
+#endif
+
 #define SOCKET_PATH"/var/lock/qemu-nbd-%s"
 
 #define NBD_BUFFER_SIZE (1024*1024)
-- 
1.7.5