mirror of
https://github.com/Hizenberg469/C1-Linux_SYS_Prog-AS-.git
synced 2026-04-19 18:32:24 +03:00
How to make Makefile?
This commit is contained in:
26
Makefile_Assignment/Makefile
Normal file
26
Makefile_Assignment/Makefile
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
TARGET: exemath
|
||||||
|
exemath: main.o libcalc.a
|
||||||
|
gcc main.o -o exemath -L . libcalc.a -lm
|
||||||
|
|
||||||
|
libcalc.a: trig_math/trig_math.o common_math/common_math.o complex_math/complex_math.o
|
||||||
|
ar rs libcalc.a common_math/common_math.o complex_math/complex_math.o trig_math/trig_math.o
|
||||||
|
|
||||||
|
common_math.o: common_math/common_math.c
|
||||||
|
gcc -c -I common_math common_math/common_math.c -o common_math/common_math.o
|
||||||
|
|
||||||
|
complex_math.o: complex_math/complex_math.c
|
||||||
|
gcc -c -I complex_math complex_math/complex_math.c -o complex_math/complex_math.o
|
||||||
|
|
||||||
|
trig_math.o: trig_math/trig_math.c
|
||||||
|
gcc -c -I trig_math trig_math/trig_math.c -o trig_math/trig_math.o
|
||||||
|
|
||||||
|
main.o: main.c
|
||||||
|
gcc -c -I common_math -I complex_math -I trig_math main.c -o main.o
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm common_math/common_math.o
|
||||||
|
rm complex_math/complex_math.o
|
||||||
|
rm trig_math/trig_math.o
|
||||||
|
rm main.o
|
||||||
|
rm libcalc.a
|
||||||
|
rm exemath
|
||||||
44
Makefile_Assignment/common_math/common_math.c
Normal file
44
Makefile_Assignment/common_math/common_math.c
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: common_math.c
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 04/02/24 07:32:41 PM IST
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: YOUR NAME (),
|
||||||
|
* Organization:
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "common_math.h"
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
double add (double a, double b){return b + a;}
|
||||||
|
double sub (double a, double b){return a - b;}
|
||||||
|
double mul (double a, double b){return a * b;}
|
||||||
|
double div (double a, double b){
|
||||||
|
if (b == 0){
|
||||||
|
printf("divide by zero not allowed\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return a / b;
|
||||||
|
}
|
||||||
|
|
||||||
|
double max (double a, double b){
|
||||||
|
if(a > b)
|
||||||
|
return a;
|
||||||
|
return b;
|
||||||
|
}
|
||||||
|
|
||||||
|
double min (double a, double b){
|
||||||
|
if(a > b)
|
||||||
|
return b ;
|
||||||
|
return a;
|
||||||
|
}
|
||||||
|
|
||||||
30
Makefile_Assignment/common_math/common_math.h
Normal file
30
Makefile_Assignment/common_math/common_math.h
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: common_math.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 04/02/24 07:33:21 PM IST
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: YOUR NAME (),
|
||||||
|
* Organization:
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __COMMON_MATH__
|
||||||
|
#define __COMMON_MATH__
|
||||||
|
|
||||||
|
double add (double a, double b);
|
||||||
|
double sub (double a, double b);
|
||||||
|
double mul (double a, double b);
|
||||||
|
double div (double a, double b);
|
||||||
|
double max (double a, double b);
|
||||||
|
double min (double a, double b);
|
||||||
|
|
||||||
|
#endif /* __COMMON_MATH__ */
|
||||||
|
|
||||||
34
Makefile_Assignment/complex_math/complex_math.c
Normal file
34
Makefile_Assignment/complex_math/complex_math.c
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: complex_math.c
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 04/02/24 07:36:03 PM IST
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: YOUR NAME (),
|
||||||
|
* Organization:
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "complex_math.h"
|
||||||
|
complex_n_t cadd(complex_n_t a, complex_n_t b){
|
||||||
|
complex_n_t res;
|
||||||
|
res.re = a.re + b.re;
|
||||||
|
res.imag = a.imag + b.imag;
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
complex_n_t csub(complex_n_t a, complex_n_t b){
|
||||||
|
complex_n_t res;
|
||||||
|
res.re = a.re - b.re;
|
||||||
|
res.imag = a.imag - b.imag;
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
30
Makefile_Assignment/complex_math/complex_math.h
Normal file
30
Makefile_Assignment/complex_math/complex_math.h
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: complex_math.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 04/02/24 07:36:29 PM IST
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: YOUR NAME (),
|
||||||
|
* Organization:
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __COMPLEX_MATH__
|
||||||
|
#define __COMPLEX_MATH__
|
||||||
|
|
||||||
|
typedef struct{
|
||||||
|
double re;
|
||||||
|
double imag;
|
||||||
|
} complex_n_t;
|
||||||
|
|
||||||
|
complex_n_t cadd(complex_n_t a, complex_n_t b);
|
||||||
|
complex_n_t csub(complex_n_t a, complex_n_t b);
|
||||||
|
|
||||||
|
#endif
|
||||||
37
Makefile_Assignment/main.c
Normal file
37
Makefile_Assignment/main.c
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: main.c
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 04/02/24 07:38:54 PM IST
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: YOUR NAME (),
|
||||||
|
* Organization:
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "common_math/common_math.h"
|
||||||
|
#include "complex_math/complex_math.h"
|
||||||
|
#include "trig_math/trig_math.h"
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
int main(int argc, char **argv){
|
||||||
|
double res, a = 45.0, b = 90.0;
|
||||||
|
complex_n_t cres, ca,cb;
|
||||||
|
res = a + b;
|
||||||
|
printf("two numbers added = %f\n", res);
|
||||||
|
printf("sine of %f = %f\n", a, sine(a));
|
||||||
|
ca.re = 1.0, ca.imag = 2.0;
|
||||||
|
cb.re = 2.0, cb.imag = 3.0;
|
||||||
|
cres = cadd(ca, cb);
|
||||||
|
printf("adding two complex numbers : %f + %f\n", cres.re, cres.imag);
|
||||||
|
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
29
Makefile_Assignment/trig_math/trig_math.c
Normal file
29
Makefile_Assignment/trig_math/trig_math.c
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: trig_math.c
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 04/02/24 07:37:35 PM IST
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: YOUR NAME (),
|
||||||
|
* Organization:
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "trig_math.h"
|
||||||
|
#include <math.h>
|
||||||
|
|
||||||
|
double sine(double x){
|
||||||
|
return sin(x*(PI/180));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
double cosine(double x){
|
||||||
|
return cos(x*(PI/180));
|
||||||
|
}
|
||||||
27
Makefile_Assignment/trig_math/trig_math.h
Normal file
27
Makefile_Assignment/trig_math/trig_math.h
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
/*
|
||||||
|
* =====================================================================================
|
||||||
|
*
|
||||||
|
* Filename: trig_math.h
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
*
|
||||||
|
* Version: 1.0
|
||||||
|
* Created: 04/02/24 07:37:55 PM IST
|
||||||
|
* Revision: none
|
||||||
|
* Compiler: gcc
|
||||||
|
*
|
||||||
|
* Author: YOUR NAME (),
|
||||||
|
* Organization:
|
||||||
|
*
|
||||||
|
* =====================================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __TRIG_MATH__
|
||||||
|
#define __TRIG_MATH__
|
||||||
|
|
||||||
|
#define PI 3.142
|
||||||
|
|
||||||
|
double sine(double x);
|
||||||
|
double cosine(double x);
|
||||||
|
|
||||||
|
#endif
|
||||||
Reference in New Issue
Block a user