From c1ca42447685f6939f8f9a13c18de35560d281bf Mon Sep 17 00:00:00 2001 From: Vladimir 'phcoder' Serbinenko Date: Tue, 8 Oct 2013 17:38:46 +0200 Subject: [PATCH] Move sleep routines to grub-core/osdep. --- ChangeLog | 4 ++++ Makefile.util.def | 1 + grub-core/osdep/sleep.c | 5 +++++ grub-core/osdep/unix/sleep.c | 30 ++++++++++++++++++++++++++++++ grub-core/osdep/windows/sleep.c | 28 ++++++++++++++++++++++++++++ util/misc.c | 28 ---------------------------- 6 files changed, 68 insertions(+), 28 deletions(-) create mode 100644 grub-core/osdep/sleep.c create mode 100644 grub-core/osdep/unix/sleep.c create mode 100644 grub-core/osdep/windows/sleep.c diff --git a/ChangeLog b/ChangeLog index deaba664e..304d27e1b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2013-10-08 Vladimir Serbinenko + + Move sleep routines to grub-core/osdep. + 2013-10-08 Vladimir Serbinenko Move OS-dependent files to grub-core/osdep and document it. diff --git a/Makefile.util.def b/Makefile.util.def index 813110832..229489a7a 100644 --- a/Makefile.util.def +++ b/Makefile.util.def @@ -17,6 +17,7 @@ library = { common = grub-core/osdep/devmapper/hostdisk.c; common = grub-core/osdep/hostdisk.c; common = grub-core/osdep/unix/hostdisk.c; + common = grub-core/osdep/sleep.c; common = grub-core/kern/emu/misc.c; common = grub-core/kern/emu/mm.c; common = grub-core/kern/env.c; diff --git a/grub-core/osdep/sleep.c b/grub-core/osdep/sleep.c new file mode 100644 index 000000000..c4ff1724e --- /dev/null +++ b/grub-core/osdep/sleep.c @@ -0,0 +1,5 @@ +#if defined (__MINGW32__) || defined (__CYGWIN__) +#include "windows/sleep.c" +#else +#include "unix/sleep.c" +#endif diff --git a/grub-core/osdep/unix/sleep.c b/grub-core/osdep/unix/sleep.c new file mode 100644 index 000000000..5b00a38cd --- /dev/null +++ b/grub-core/osdep/unix/sleep.c @@ -0,0 +1,30 @@ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2002,2003,2005,2006,2007,2008,2009,2010,2011,2012,2013 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#include +#include + +void +grub_millisleep (grub_uint32_t ms) +{ + struct timespec ts; + + ts.tv_sec = ms / 1000; + ts.tv_nsec = (ms % 1000) * 1000000; + nanosleep (&ts, NULL); +} diff --git a/grub-core/osdep/windows/sleep.c b/grub-core/osdep/windows/sleep.c new file mode 100644 index 000000000..82fd0ed82 --- /dev/null +++ b/grub-core/osdep/windows/sleep.c @@ -0,0 +1,28 @@ +/* + * GRUB -- GRand Unified Bootloader + * Copyright (C) 2002,2003,2005,2006,2007,2008,2009,2010,2011,2012,2013 Free Software Foundation, Inc. + * + * GRUB is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * GRUB is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GRUB. If not, see . + */ + +#include +#include +#include + +void +grub_millisleep (grub_uint32_t ms) +{ + Sleep (ms); +} + diff --git a/util/misc.c b/util/misc.c index cf1ae662d..ad9db79f8 100644 --- a/util/misc.c +++ b/util/misc.c @@ -50,12 +50,6 @@ const char *program_name = GRUB_BUILD_PROGRAM_NAME; #include "progname.h" #endif -#ifdef __MINGW32__ -#include -#include -#include "dirname.h" -#endif - #ifdef GRUB_UTIL int grub_err_printf (const char *fmt, ...) @@ -257,28 +251,6 @@ grub_register_exported_symbols (void) { } -#ifdef __MINGW32__ - -void -grub_millisleep (grub_uint32_t ms) -{ - Sleep (ms); -} - -#else - -void -grub_millisleep (grub_uint32_t ms) -{ - struct timespec ts; - - ts.tv_sec = ms / 1000; - ts.tv_nsec = (ms % 1000) * 1000000; - nanosleep (&ts, NULL); -} - -#endif - #ifdef GRUB_UTIL void grub_util_init_nls (void)