46 lines
1.2 KiB
Haskell
46 lines
1.2 KiB
Haskell
{-# LANGUAGE CPP #-}
|
|
|
|
module HsLib where
|
|
|
|
import Control.Monad (unless)
|
|
|
|
check_version_versioned_lib :: IO ()
|
|
#ifndef VERSION_versioned_lib
|
|
check_version_versioned_lib = fail "hs: VERSION_versioned_lib missing"
|
|
#else
|
|
check_version_versioned_lib =
|
|
unless (VERSION_versioned_lib == "1.2.3.4") $
|
|
fail "hs: VERSION_versioned_lib invalid"
|
|
#endif
|
|
|
|
check_min_version_versioned_lib :: IO ()
|
|
#ifndef MIN_VERSION_versioned_lib
|
|
check_min_version_versioned_lib = fail "hs: MIN_VERSION_versioned_lib missing"
|
|
#elif !MIN_VERSION_versioned_lib(1,2,3)
|
|
check_min_version_versioned_lib = fail "hs: MIN_VERSION_versioned_lib invalid"
|
|
#else
|
|
check_min_version_versioned_lib = pure ()
|
|
#endif
|
|
|
|
check_version_base :: IO ()
|
|
#ifndef VERSION_base
|
|
check_version_base = fail "hs: VERSION_base missing"
|
|
#else
|
|
check_version_base = pure ()
|
|
#endif
|
|
|
|
check_min_version_base :: IO ()
|
|
#ifndef MIN_VERSION_base
|
|
check_min_version_base = fail "hs: MIN_VERSION_base missing"
|
|
#elif !MIN_VERSION_base(0,0,0)
|
|
check_min_version_base = fail "hs: MIN_VERSION_base invalid"
|
|
#else
|
|
check_min_version_base = pure ()
|
|
#endif
|
|
|
|
check :: IO ()
|
|
check = do
|
|
check_version_versioned_lib
|
|
check_min_version_versioned_lib
|
|
check_version_base
|
|
check_min_version_base
|