Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Prog2
/
labor_peldak
/
lab_08
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
d650c0e1
authored
3 months ago
by
Karsa Zoltán István
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'cmake-project' into 'master'
Cmake project See merge request
!1
parents
27a12a42
391f1c6d
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
108 additions
and
2 deletions
+108
-2
CMakeLists.txt
+105
-0
halmaz/gtest_lite.h
+1
-0
halmaz/point.h
+2
-2
No files found.
CMakeLists.txt
0 → 100644
View file @
d650c0e1
# lab_08 project
#
# Originally created: 2023-04-13.
#
# CMakeLists.txt --
# CMake file a lab_08 projekt fordításához.
# Használat:
# - parancssor: cmake -B _build -S . && cmake --build _build
# - CLion/Visual Studio: Megnyitni a mappát projektként
cmake_minimum_required
(
VERSION 3.18
)
# Debian Bullseye
include
(
CheckCXXCompilerFlag
)
project
(
lab_08
VERSION 1.0.0
LANGUAGES CXX
)
add_executable
(
generikus1
generikus1/generikus1_teszt.cpp
generikus1/integer.h
)
add_executable
(
halmaz
halmaz/gtest_lite.h
halmaz/halmaz_teszt.cpp
halmaz/integer.h
halmaz/point.h
)
target_compile_features
(
generikus1 PRIVATE cxx_std_98
)
target_compile_features
(
halmaz PRIVATE cxx_std_98
)
set_target_properties
(
generikus1 PROPERTIES CXX_EXTENSIONS OFF
)
set_target_properties
(
halmaz PROPERTIES CXX_EXTENSIONS OFF
)
target_compile_options
(
generikus1 PRIVATE
$<$<CXX_COMPILER_ID:GNU,Clang,AppleClang>:-Werror>
$<$<CXX_COMPILER_ID:MSVC>:/WX>
)
target_compile_options
(
halmaz PRIVATE
$<$<CXX_COMPILER_ID:GNU,Clang,AppleClang>:-Werror>
$<$<CXX_COMPILER_ID:MSVC>:/WX>
)
## CheckWarningFlag(OptionName CacheName) --
# Ellenőrzi, hogy az használt fordító érti-e a kapott parancssori kapcsolót.
function
(
check_warning_flag OptionName CacheName
)
if
(
OptionName MATCHES
[[^/]]
)
set
(
WarningPrefix
""
)
else
()
set
(
WarningPrefix
"-W"
)
endif
()
check_cxx_compiler_flag
(
"
${
WarningPrefix
}${
OptionName
}
"
"HasWarning_
${
CacheName
}
"
)
set
(
"HAS_WARNING_
${
CacheName
}
"
${
HasWarning_
${
CacheName
}}
PARENT_SCOPE
)
endfunction
()
## generate_warnings(&Target) --
# Beállít hibakapcsolókat a kapott target-en.
function
(
generate_warnings _Target
)
set
(
gw_known_warnings
# GCC/Clang
extra pedantic error=vla error=non-virtual-dtor
parentheses logical-op reorder no-c++98-compat
no-reserved-macro-identifier no-unused-macros no-float-equal
no-zero-as-null-pointer-constant no-global-constructors
no-exit-time-destructors no-unsafe-buffer-usage
no-missing-prototypes
# kiír nincs előre deklarálva
no-deprecated-copy-with-user-provided-dtor
# Integer dtor miatt már nincs copy ctora
no-c++98-compat-pedantic
# variadic macro
no-reserved-identifier
# _Is_...
no-old-style-cast
# gtest_lite
no-shadow-field-in-constructor
# gtest_lite
no-shorten-64-to-32
# gtest_lite
# MSVC
# conditional expression is constant (nem szereti az ELKESZULT) markot
/wd4127
# 'function': member function does not override any base class virtual member function
/we4263
# 'class': class has virtual functions, but destructor is not virtual
/we4265
# 'identifier': illegal qualified name in member declaration
/we4596
# 'symbol': exception specification does not match previous declaration
/we4986
4
/permissive-
/diagnostics:caret
)
# MSVC /Wall == clang -Weverything, arra nincs szükségünk
set
(
gw_found_warnings $<$<CXX_COMPILER_ID:GNU,Clang,AppleClang>:-Wall>
)
foreach
(
warn IN LISTS gw_known_warnings
)
string
(
MAKE_C_IDENTIFIER
"
${
warn
}
"
CacheName
)
check_warning_flag
(
"
${
warn
}
"
${
CacheName
}
)
if
(
HAS_WARNING_
${
CacheName
}
)
if
(
warn MATCHES
[[^/]]
)
set
(
WarningPrefix
""
)
else
()
set
(
WarningPrefix
"-W"
)
endif
()
list
(
APPEND gw_found_warnings
"
${
WarningPrefix
}${
warn
}
"
)
endif
()
endforeach
()
target_compile_options
(
"
${
_Target
}
"
PUBLIC
${
gw_found_warnings
}
)
endfunction
()
generate_warnings
(
generikus1
)
generate_warnings
(
halmaz
)
This diff is collapsed.
Click to expand it.
halmaz/gtest_lite.h
View file @
d650c0e1
...
...
@@ -285,6 +285,7 @@ public:
}
/// Teszt vége
std
::
ostream
&
end
(
bool
memchk
=
false
)
{
(
void
)
memchk
;
#ifdef MEMTRACE
if
(
memchk
&&
ablocks
!=
memtrace
::
allocated_blocks
())
{
status
=
false
;
...
...
This diff is collapsed.
Click to expand it.
halmaz/point.h
View file @
d650c0e1
...
...
@@ -7,8 +7,8 @@
#ifndef POINT_H
#define POINT_H
/// Point oszt
l
y
/// Sz
ndkosan egyszer (b
uta)
/// Point oszt
ál
y
/// Sz
ándékosan egyszerű (b
uta)
class
Point
{
int
x
;
int
y
;
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment