bin_PROGRAMS = lbxtool
include_HEADERS = lbx.h
-liblbx_la_SOURCES = lbx.c
+liblbx_la_SOURCES = byteorder.h lbx.c
lbxtool_SOURCES = lbxtool.c
lbxtool_LDADD = liblbx.la
+++ /dev/null
-#include <stdint.h>
-#include "byteorder.h"
-
-uint16_t letohs(uint16_t val)
-{
- uint16_t hostval;
- int i;
-
- for (i = 0; i < sizeof val; i++)
- ((uint8_t *)&hostval)[i] = ((uint8_t *)&val)[sizeof val - i];
-}
-
-uint32_t letohl(uint32_t val)
-{
- uint32_t hostval;
- int i;
-
- for (i = 0; i < sizeof val; i++)
- ((uint8_t *)&hostval)[i] = ((uint8_t *)&val)[sizeof val - i];
-}
#ifndef BYTEORDER_H_
#define BYTEORDER_H_
+#include <stdint.h>
+
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
+static inline uint16_t _flip16(uint16_t val)
+{
+ uint16_t hostval;
+ int i;
+
+ for (i = 0; i < sizeof val; i++)
+ ((uint8_t *)&hostval)[i] = ((uint8_t *)&val)[sizeof val - i];
+}
+
+static inline uint32_t _flip32(uint32_t val)
+{
+ uint32_t hostval;
+ int i;
+
+ for (i = 0; i < sizeof val; i++)
+ ((uint8_t *)&hostval)[i] = ((uint8_t *)&val)[sizeof val - i];
+}
+
#ifdef WORDS_BIGENDIAN
- uint16_t letohs(uint16_t);
- uint32_t letohl(uint32_t);
+# define letohs(x) _flip16(x)
+# define letohl(x) _flip32(x)
#else
# define letohs(x) (x)
# define letohl(x) (x)